应用 for 遍历 List
能够应用 for 来遍历 List,代码如下:
thislist = ["apple", "banana", "cherry"]for x in thislist: print(x)PS E:\dream\markdown\python> & "C:/Program Files (x86)/Python/python.exe" e:/dream/markdown/python/app/app.pyapplebananacherry
应用 index 遍历 List
除了间接应用 for 遍历,还能够组合 range() + len()
应用下标进行遍历,如下代码所示:
thislist = ["apple", "banana", "cherry"]for i in range(len(thislist)): print(thislist[i])PS E:\dream\markdown\python> & "C:/Program Files (x86)/Python/python.exe" e:/dream/markdown/python/app/app.pyapplebananacherry
应用 while 遍历 List
应用 len()
来判断 list 的长度,而后从索引0 开始遍历 list 中的每一项,不过要记得在遍历时自增 index,如下代码所示:
thislist = ["apple", "banana", "cherry"]i = 0while i < len(thislist): print(thislist[i]) i = i + 1PS E:\dream\markdown\python> & "C:/Program Files (x86)/Python/python.exe" e:/dream/markdown/python/app/app.pyapplebananacherry
应用 推导式 遍历 List
应用 python 独有的 推导式
间接快捷遍历 List。
thislist = ["apple", "banana", "cherry"][print(x) for x in thislist]PS E:\dream\markdown\python> & "C:/Program Files (x86)/Python/python.exe" e:/dream/markdown/python/app/app.pyapplebananacherry
List 推导式
当你想要从一个现有的 List 中生成一个新的 List,能够应用 推导式
这种快捷语法。
举个例子:
比方你有一个 fruits 列表,你想获取所有以 a
结尾的水果名,如果没有推导式的话,只能像上面这样写。
fruits = ["apple", "banana", "cherry", "kiwi", "mango"]newlist = []for x in fruits: if "a" in x: newlist.append(x)print(newlist)PS E:\dream\markdown\python> & "C:/Program Files (x86)/Python/python.exe" e:/dream/markdown/python/app/app.py['apple', 'banana', 'mango']
要是用 推导式
的话,只有一行代码就能够搞定,如下代码所示:
fruits = ["apple", "banana", "cherry", "kiwi", "mango"]newlist = [x for x in fruits if "a" in x]print(newlist)PS E:\dream\markdown\python> & "C:/Program Files (x86)/Python/python.exe" e:/dream/markdown/python/app/app.py['apple', 'banana', 'mango']
语法分析
语法格局如下: newlist = [expression for item in iterable if condition == True]
。能够看出,返回值是一个新的 list,同时也不会毁坏原有的list。
condition
语法格局中的 condition,用于保留枚举项判断为 true 的元素,非 true 就疏忽了,
iterable
iterable 示意可迭代的汇合,如: list,tuple,set 等等。
expression
这里的 expression
就是以后的迭代变量值,在这个迭代项筹备送入到新汇合前,能够对它进行操控,比方上面的例子:
newlist = [x.upper() for x in fruits]
译文链接:https://www.w3schools.com/pyt...
更多高质量干货:参见我的 GitHub: python