python處理變量交換與字符串及判斷的小妙招
兩變量交換
語法:
a, b = b, a
IPython測試
In [1]: a = 3 In [2]: b = 5 In [3]: a, b = b, a In [4]: a Out[4]: 5 In [5]: b Out[5]: 3
免去瞭利用一個臨時變量進行過渡交互。
重復字符串
In [2]: 'love ' * 2 Out[2]: 'love love ' In [7]: for i in range(1, 10): ...: print('*' * i) ...:
*
**
***
****
*****
******
*******
********
*********
列表與字符串互相轉換
假如有一個列表內容為 ['n', 'i', 'c', 'e']
,然後設法變成 字符串nice
字符串 0123456789
轉成列表 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
語法:
''.join(['p', 'y', 't', 'h', 'o', 'n'])
IPython測試
In [6]: li = ['p', 'y', 't', 'h', 'o', 'n'] In [7]: ''.join(li) Out[7]: 'python' # 字符串轉列表 In [11]: s = '0123456789' In [12]: s = list(s) In [13]: s Out[13]: ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
相對 for
循環進行拼接是不是簡潔有效,字符串可以直接轉列表。相互轉換看看各自的 api
能不能排上用場。
多情況判空
假如一個變量可能是 '', False, None, 0, []
,但都認為這樣是 空 該如何判空呢 ?
語法:
a = '' if a: print('進不來') else: print('空值')
IPython測試
In [20]: a = '' In [21]: if a: ...: print('進不來') ...: else: ...: print('空值') ...: 空值 In [22]: a = False In [23]: if a: ...: print('進不來') ...: else: ...: print('空值') ...: 空值 In [24]: a = None In [25]: if a: ...: print('進不來') ...: else: ...: print('空值') ...: 空值 In [26]: a = 0 In [27]: if a: ...: print('進不來') ...: else: ...: print('空值') ...: 空值 In [28]: a = [] In [29]: if a: ...: print('進不來') ...: else: ...: print('空值') ...: 空值
多值一起判斷
同時校驗多個參數不是空值或含有空值
In [30]: a = 1 In [31]: b = '' In [32]: c = True In [33]: all([a, b, c]) Out[33]: False In [34]: any([a, b, c]) Out[34]: True
- all() 是列表中所有元素都不為空為
True
,反之隻要有一個是 空值 則False
- any() 是列表中有一個元素非空即為
True
,所有元素為空才False
- 註意 空值 有
'', False, None, 0, []
,然後就是需要裝到一個統一的列表進行all()
,any()
判斷
剛好可以驗證上面的多情況判空。
In [54]: li Out[54]: [True, True, True, True] In [55]: all(li) Out[55]: True In [56]: any(li) Out[56]: True
all() 驗證
# all 隻要有一個是空值就False In [62]: all([False, True, True, True]) Out[62]: False In [66]: all(['', True, True, True]) Out[66]: False In [66]: all([None, True, True, True]) Out[66]: False In [66]: all([True, [], True, True]) Out[66]: False In [66]: all([True, 0, True, True]) Out[66]: False # all 全部非空才 True In [76]: li Out[76]: ['python', 3.14, [1, 2], True] In [77]: all(li) Out[77]: True
any() 驗證
# 所有元素為空則 False In [82]: any([False, False, False, False]) Out[82]: False In [83]: any([False, '', [], 0, None]) Out[83]: False # any 隻要有一個非空就為 True In [86]: any([True, '', [], 0, None]) Out[86]: True In [87]: any([False, '123', [], 0, None]) Out[87]: True In [88]: any([False, '', [1, 2], 0, None]) Out[88]: True In [89]: any([False, '', [], 1, None]) Out[89]: True
尾語
✍ 用 Code 譜寫世界,讓生活更有趣。❤️
✍ 萬水千山總是情,點贊再走行不行。❤️
✍ 碼字不易,還望各位大俠多多支持。❤️
到此這篇關於python處理變量交換與字符串及判斷的小妙招的文章就介紹到這瞭,更多相關python 變量交換內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Python變量教程之全局變量和局部變量
- Python字符串的15個基本操作(小結)
- python中必會的四大高級數據類型(字符,元組,列表,字典)
- 學好python基本數據類型
- python wordcloud庫實例講解使用方法