@songying
2018-07-09T06:57:55.000000Z
字数 1056
阅读 1397
python高级特性
age = 18if age > 18 and age < 60:print("young man")
if 18 < age < 60:print("young man")
if gender == "male":text = "男"else:text = "女"
text = "男" if gender == "male" else "女"
没必要显式的将对象与True和False比较。
if attr == True:do_something()if len(value) != 0:do_something()
if attr:do_something()if value:do_something()
| 类型 | False | True |
|---|---|---|
| 布尔 | False、 | True |
| 字符串 | ""(空字符串) |
非空字符串 |
| 数值 | 0, 0.0 | 非0 数值 |
| 容器 | [], (), {}, set() | 至少有一个元素的容器对象 |
| None | None | 非None对象 |
for...else...的else部分用来处理没有从for循环中断的情况。有了它,我们不用设置状态变量来检查是否for循环有break出来,简单方便.
在for循环完整完成后才执行else;如果中途从break跳出,则连else一起跳出。
for x in xrange(1,5):if x == 5:print 'find 5'breakelse:print 'can not find 5!'
dict = {'name':'Tim'}dict['work'] = dict.get('work', 0) + 1
reverse_str = str[::-1] # 字符串反转input == input[::-1] # 检测回文
str_list = ["python", "is", "good"]str_res = ' '.join(str_list)
str_res = ''for s in str_list:str_res += s + ' '
keys = ['key1', 'key2']values = ['value1', 'value2']dic = dict(zip(keys, values))
result = {token: i for i, token in enumerate(word)}
