Python处理字符串和列表元组的小技巧
生活随笔
收集整理的這篇文章主要介紹了
Python处理字符串和列表元组的小技巧
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
變量值互換
a = 1 b = 100 # 變量值互換 a, b = b, aprint('a:', a) print('b:', b)輸出結果:
a: 100 b: 1多個變量賦值
a, b, c = 1, 2, 3print(a, b, c)輸出結果:
1 2 3join()方法
使用join()方法可以將字符串或者列表元組,按照指定的間隔字符串合成一個新的字符串。
''' Python大型免費公開課,適合初學者入門 加QQ群:579817333 獲取學習資料及必備軟件。 ''' string = 'Hello World' joined_string = '~'.join(string)date_list = ['2020', '12', '12'] joined_list_string = '-'.join(date_list)print(joined_string) print(joined_list_string)輸出結果:
H~e~l~l~o~ ~W~o~r~l~d 2020-12-12字符串切割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']三元表達式
''' Python大型免費公開課,適合初學者入門 加QQ群:579817333 獲取學習資料及必備軟件。 ''' point = 34 # 如果分數大于等于60就通過,否則不通過 status = 'pass' if point >= 60 else 'fail'print(status)輸出結果:
fail列表推導式
li = [10, 23, 45, 68, 79, 91] # 取出li列表中大于60的元素并乘以10組成一個新列表 new_li = [i*10 for i in li if i > 60]print(new_li)輸出結果:
[680, 790, 910]遍歷列表逆序
li = [1, 2, 3, 4, 5] for i in reversed(li):print(i)輸出結果:
5 4 3 2 1列表去重
''' Python大型免費公開課,適合初學者入門 加QQ群:579817333 獲取學習資料及必備軟件。 ''' li = [1, 2, 3, 1, 2, 3] # 將列表轉換為集合自動去重,再轉回列表 li = list(set(li))print(li)輸出結果:
[1, 2, 3]with關鍵字 在執行完with代碼塊中的代碼,系統會自動調用close()方法,哪怕代碼報異常。
# 離開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字符串填充對齊
''' Python大型免費公開課,適合初學者入門 加QQ群:579817333 獲取學習資料及必備軟件。 ''' left = 'left'.ljust(20, '*') mid = 'mid'.center(20, '*') right = 'right'.rjust(20, '*')print(left) print(mid) print(right)輸出結果:
left**************** ********mid********* ***************rightzip()同步處理多個列表
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 15all()和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('') # Trueany('') # False any([]) # False any(()) # False any(['', 'x', 'y']) # True any([0, 1, 2]) # True any([0, '', False]) # False總結
以上是生活随笔為你收集整理的Python处理字符串和列表元组的小技巧的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python中的运算符
- 下一篇: python函数的高级用法