修改文件中的方法,不能直接使用?
在使用发现不能改变,原因是因为文件已经加载到内存,改变源文件,并不能生效,所以要重新导入。
在Python中定义函数,可以用必选参数、默认参数、可变参数、关键字参数和命名关键字参数,这5种参数都可以组合使用。但是请注意,参数定义的顺序必须是:必选参数、默认参数、可变参数、命名关键字参数和关键字参数
所有可迭代的对象都可以用 for x in s 来处理,判断是否可迭代:
>>> from collections import Iterable
>>> isinstance('abc', Iterable) # str是否可迭代
True
>>> isinstance([1,2,3], Iterable) # list是否可迭代
True
>>> isinstance(123, Iterable) # 整数是否可迭代
False
Python内置的enumerate
函数可以把一个list变成索引-元素对
>>> for i, value in enumerate(['A', 'B', 'C']):
... print(i, value)
...
0 A
1 B
2 C
问题1,输出L1 = [‘Hello’, ‘World’, 18, ‘Apple’, None] 由于不能输出
L1 = ['Hello', 'World', 18, 'Apple', None]
[s.lower() for s in L1 if isinstance(s, str) ]
['hello', 'world', 'apple']
关于generator的调用,yield关键字,遇到yield就会中断,下次会继续执行。
>>> g = fib(6)
>>> while True://异常捕获
... try:
... x = next(g)
... print('g:', x)
... except StopIteration as e:
... print('Generator return value:', e.value)
... break
...
g: 1
g: 1
g: 2
g: 3
g: 5
g: 8
Generator return value: done