Python列表推導式的使用和一些遍歷技巧

2021-09-01 12:44:45 字數 1116 閱讀 8484

參考鏈結

# -*-coding:utf8-*-

# 用列表推導式求矩陣的轉置

a = [[1, 2, 3, 4],

[5, 6, 7, 8],

[9, 10, 11, 12]]

def t(a):

if len(a) == 0: #空矩陣

return

l = len(a[0])

for i in range(1, len(a)): #是不是乙個矩陣

if l != len(a[i]):

return

return [[a[j][i] for j in range(len(a))] for i in range(len(a[0]))]

print(t(a))

# 用列表推導打贏乘法表

str1 = [str(j) + '*' + str(i) + '=' + str(i * j).center(2) + ' ' + ('\n' if i == j else '')

for i in range(1, 10) for j in range(1, i + 1)]

print(''.join(str1))

# 用列表推導式構字典

print()

list1 = ['zhang', 'er', 'gou']

for ind, content in enumerate(list1):

print(ind, content)

feature = [[1, 1], [1, -1], [1, 2], [-1, 1], [-1, -2]]

label = [1, 4, 1, 2, 3]

list2 = [1,2,3, 4, 5]

# zip(feature, label, list3) # 可以打包更多

# 用zip打包列表

for point, local in zip(feature, label):

print('座標(, )在第象限'.format(point[0], point[1], local))

# 反向迭代

print([it for it in reversed(list2)])

python列表推導式使用

列表推導式 alist 一般的操作方式 for x in range 30 print alist alist x x for x in range 30 使用列表推導式,形式上更加簡潔 print alist alist 一般的操作方法 for x in freshfruit print alis...

Python 列表推導式中使用if

列表推導式 又稱列表解析式 提供了一種簡明扼要的方法來建立列表。它的結構是在乙個中括號裡包含乙個表示式,然後是乙個for語句,然後是 0 個或多個 for 或者 if 語句。那個表示式可以是任意的,意思是你可以在列表中放入任意型別的物件。返回結果將是乙個新的列表,在這個以 if 和 for 語句為上...

Python列表推導式和生成式

推導式 作用 按一定的邏輯順序,生成列表,簡單且快捷 語法一 表示式 for 變數 in 舊列表 例如生成乙個 1,2,3,4,5,6,7 列表 x for x in range 1 8 或者生成乙個 1,4,9,16,25,36,49,64,81 的列表 x x for x in range 1 ...