Python教程:切片、迭代、列表生成式
生活随笔
收集整理的這篇文章主要介紹了
Python教程:切片、迭代、列表生成式
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
切片
序列類型是其元素被順序放置的一種數(shù)據(jù)結(jié)構(gòu)類型,這種方式允許通過下標(biāo)的方式來獲得某一個數(shù)據(jù)元素,或者通過指定下標(biāo)范圍來獲得一組序列的元素。這種訪問序列的方式叫做切片。
- 可以使用切片操作的數(shù)據(jù)類型:list、tuple、字符串。
- 切片操作的區(qū)間是左閉右開。
- 切片操作的操作符::[] [:] [::]
L = [‘Michael’, ‘Sarah’, ‘Tracy’, ‘Bob’, ‘Jack’]
#取L中的前三個數(shù)據(jù)
print(L[0:3]) #[‘Michael’, ‘Sarah’, ‘Tracy’]
執(zhí)行結(jié)果:
['Michael', 'Sarah', 'Tracy'] ['Sarah', 'Tracy'] ['Bob'] ['Jack'] ['Bob', 'Jack'] ['Michael', 'Sarah', 'Tracy', 'Bob', 'Jack'] [0, 20, 40, 60, 80]迭代
給定一個list或者tuple,通過for循環(huán)來遍歷這個list或者tuple、這種遍歷就是迭代(iteration)。
常見的可以迭代的對象有:字符串,列表,元組,字典。
對字典迭代
''' 遇到問題沒人解答?小編創(chuàng)建了一個Python學(xué)習(xí)交流QQ群:778463939 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學(xué)習(xí)教程和PDF電子書! ''' d={'python':1,'php':2,'java':3}#默認(rèn)迭代的是key print("字典默認(rèn)迭代key:") for i in d:print(i)print("字典自定義迭代key:") #自定義迭代key for key in d.keys():print(key)print("字典自定義迭代value:") #迭代value for value in d.values():print(value)print("字典自定義同時迭代key和value:") #同時迭代key,value for k , v in d.items():print(k,v)執(zhí)行結(jié)果:
字典默認(rèn)迭代key: php java python 字典自定義迭代key: php java python 字典自定義迭代value: 2 3 1 字典自定義同時迭代key和value: php 2 java 3 python 1對列表迭代
''' 遇到問題沒人解答?小編創(chuàng)建了一個Python學(xué)習(xí)交流QQ群:778463939 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學(xué)習(xí)教程和PDF電子書! ''' #對于一個列表 lanage=['python','php','java','c++']# 第一種: print("list迭代第一種方法:") for x in range(len(lanage)):print(x,lanage[x]) # 第二種: print("list迭代第二種方法:") for i ,value in enumerate(lanage):print(i,value)#在同一行輸出: print("list迭代同一行輸出:") for i ,value in enumerate(lanage):print(i,value ,end=',')執(zhí)行結(jié)果:
list迭代第一種方法: 0 python 1 php 2 java 3 c++ list迭代第二種方法: 0 python 1 php 2 java 3 c++ list迭代同一行輸出: 0 python,1 php,2 java,3 c++,列表生成式
對列表里面的數(shù)據(jù)進行運算和操作,生成新的列表最高效快速的辦法是列表生成式。
# 使用列表生成式對列表數(shù)平方b = range(1, 11) c = [x*x for x in b] print(c)執(zhí)行結(jié)果:[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]帶if判斷
''' 遇到問題沒人解答?小編創(chuàng)建了一個Python學(xué)習(xí)交流QQ群:778463939 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學(xué)習(xí)教程和PDF電子書! ''' # 提取大于0的數(shù) c = [1, 3, -3, 4, -2, 8, -7, 6] d = [x for x in c if x > 0] print(d)執(zhí)行結(jié)果:[1, 3, 4, 8, 6]多個參數(shù)
L = [m + n for m in 'ABC' for n in 'XYZ'] print(L) 執(zhí)行結(jié)果:['AX', 'AY', 'AZ', 'BX', 'BY', 'BZ', 'CX', 'CY', 'CZ']總結(jié)
以上是生活随笔為你收集整理的Python教程:切片、迭代、列表生成式的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python基础教程:嵌套函数、闭包
- 下一篇: python列表各种切片姿势