變量值互換
a = 1
b = 100
# 變量值互換
a, b = b, a
print('a:', a)
print('b:', b)
輸出結果:
a: 100
b: 1
### 多個變量賦值 ```python a, b, c = 1, 2, 3
print(a, b, c)
輸出結果:
```shell
1 2 3
### join()方法
使用join()方法可以將字符串或者列表元組,按照指定的間隔字符串合成一個新的字符串。
string = 'Hello World'
joined_string = '~'.join(string)
date_list = ['2019', '12', '21']
joined_list_string = '-'.join(date_list)
print(joined_string)
print(joined_list_string)
輸出結果:
H~e~l~l~o~ ~W~o~r~l~d
2019-12-21
### 字符串切割split()
name = 'Miles,Tony,Mary'
# 以逗號切割
print(name.split(','))
sentences = '''
Miles is male, age is 24
Tony is male, age is 37
Mary is female, age is 15
'''
# 先去掉字符串頭尾的空格,然后以換行符切割
print(sentences.strip().split('\n'))
輸出結果:
['Miles', 'Tony', 'Mary']
['Miles is male, age is 24', 'Tony is male, age is 37', 'Mary is female, age is 15']
### 三元表達式
point = 34
# 如果分數大於等於60就通過,否則不通過
status = 'pass' if point >= 60 else 'fail'
print(status)
輸出結果:
fail
### 列表推導式 ```python li = [10, 23, 45, 68, 79, 91] # 取出li列表中大於60的元素並乘以10組成一個新列表 new_li = [i*10 for i in li if i > 60]
print(new_li)
輸出結果:
```shell
[680, 790, 910]
### 遍歷列表逆序
li = [1, 2, 3, 4, 5]
for i in reversed(li):
print(i)
輸出結果:
5
4
3
2
1
### 列表去重
li = [1, 2, 3, 1, 2, 3]
# 將列表轉換為集合自動去重,再轉回列表
li = list(set(li))
print(li)
輸出結果:
[1, 2, 3]
### with關鍵字 在執行完with代碼塊中的代碼,系統會自動調用close()方法,哪怕代碼報異常。 ```python # 離開with代碼塊后自動調用file.close() with open('test.txt') as file: file.read() ```
### enumerate枚舉函數 用於枚舉可迭代對象,同時返回下標索引。
li = ['Miles', 'Tony', 'Mary']
for index, name in enumerate(li):
print(index, name)
輸出結果:
0 Miles
1 Tony
2 Mary
### 列表元組解包
li = [1, 2, 3, 4]
var1, var2, var3, var4 = li
print(var1, var2, var3, var4)
print('--------')
first, *mid, last = li
print(first)
print(mid)
print(last)
輸出結果:
1 2 3 4
--------
1
[2, 3]
4
### 字符串填充對齊
left = 'left'.ljust(20, '*')
mid = 'mid'.center(20, '*')
right = 'right'.rjust(20, '*')
print(left)
print(mid)
print(right)
輸出結果:
left****************
********mid*********
***************right
### zip()同步處理多個列表
name_list = ['Miles', 'Tony', 'Mary']
gender_list = ['male', 'male', 'female']
age_list = [24, 37, 15]
for name, gender, age in zip(name_list, gender_list, age_list):
print('%s is %s, age is %d' % (name, gender, age))
輸出結果:
Miles is male, age is 24
Tony is male, age is 37
Mary is female, age is 15
### all()和any() 對於all(),可迭代參數中所有元素都為True則返回True,即只要有一個元素為空、0或者False,就返回False. 注意空串,空列表元組,all()返回為True! 對於any(),和all()正好相反,只有可迭代參數中有一個元素為True就返回True,否則返回False.
all('abc') # True
all(['a', 'b', 'c']) # True
all(['', 'x', 'y']) # False
all([1, 2, 3]) # True
all([0, 1, 2]) # False
# 注意空串,空列表元組,all()返回為True
all([]) # True
all(()) # True
all('') # True
any('') # False
any([]) # False
any(()) # False
any(['', 'x', 'y']) # True
any([0, 1, 2]) # True
any([0, '', False]) # False
