Python內部函式zip使用
#zip() 函式
'''
zip() 函式用於將可迭代的物件作為引數,將物件中對應的元素打包成一個個元組,
然後返回由這些元組組成的列表。
如果各個迭代器的元素個數不一致,則返回列表長度與最短的物件相同,
利用 * 號操作符,可以將元組解壓為列表。
zip 語法:
zip([iterable, ...]) #可迭代
'''
a=[0,1,2,3,4]
b=[5,6,7,8,9]
c=[10,11,12,13,14,15,16]
zipped1 = zip(a,b)#打包為元組列表
print(zipped1.__next__())#只能取出一組
print(list(zipped1))#可以全部取出
zipped2 = zip(b,c)#元素個數與最短的列表一致
print(zipped2.__next__())
print(list(zipped2))
zipped3 = zip(a,c)
i= zip(*zipped3)#與zip相反,可理解為解壓,返回二維矩陣式
#print(i.__next__())
print(list(i)) #可以全部取出
#案例:
checkio=([ 'X.O', 'XX.', 'XOO']) == 'X'
checkio=([ 'OO.', 'XOX', 'XOX']) == 'O'
checkio=([ 'OOX', 'XXO', 'OXX']) == 'D'
def checkio(result):
rows = result
cols = map(''.join, zip(*rows))
diags = map(''.join, zip(*[(r[i], r[2 - i]) for i, r in enumerate(rows)]))
lines = rows + list(cols) + list(diags)
return 'X' if ('XXX' in lines) else 'O' if ('OOO' in lines) else 'D'
result = ['OOX','XXO','OXX']
rows = result
for i in zip(*rows):
print(i)
'''
zip() 函式用於將可迭代的物件作為引數,將物件中對應的元素打包成一個個元組,
然後返回由這些元組組成的列表。
如果各個迭代器的元素個數不一致,則返回列表長度與最短的物件相同,
利用 * 號操作符,可以將元組解壓為列表。
zip 語法:
zip([iterable, ...]) #可迭代
'''
a=[0,1,2,3,4]
b=[5,6,7,8,9]
c=[10,11,12,13,14,15,16]
zipped1 = zip(a,b)#打包為元組列表
print(zipped1.__next__())#只能取出一組
print(list(zipped1))#可以全部取出
zipped2 = zip(b,c)#元素個數與最短的列表一致
print(zipped2.__next__())
print(list(zipped2))
zipped3 = zip(a,c)
i= zip(*zipped3)#與zip相反,可理解為解壓,返回二維矩陣式
#print(i.__next__())
print(list(i)) #可以全部取出
#案例:
checkio=([ 'X.O', 'XX.', 'XOO']) == 'X'
checkio=([ 'OO.', 'XOX', 'XOX']) == 'O'
checkio=([ 'OOX', 'XXO', 'OXX']) == 'D'
def checkio(result):
rows = result
cols = map(''.join, zip(*rows))
diags = map(''.join, zip(*[(r[i], r[2 - i]) for i, r in enumerate(rows)]))
lines = rows + list(cols) + list(diags)
return 'X' if ('XXX' in lines) else 'O' if ('OOO' in lines) else 'D'
result = ['OOX','XXO','OXX']
rows = result
for i in zip(*rows):
print(i)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/20985606/viewspace-2147059/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Python的zip函式Python函式
- Python中zip函式的使用方法Python函式
- python zip enumerate函式Python函式
- python中id()函式、zip()函式、map()函式、lamda函式Python函式
- AWK高階之內部函式使用函式
- Python學習之zip函式Python函式
- python中zip()函式的用法Python函式
- zip-zip(子函式呼叫)函式
- 如何在函式內部定義函式?函式
- 22.python自定義函式(format,zip)Python函式ORM
- python基礎 函式之 強大的zipPython函式
- 函式內部This的指向問題函式
- 函式內部的變數提升函式變數
- python-內建函式(搭配lambda使用)Python函式
- Python內建函式Python函式
- python 內建函式Python函式
- CoffeeScript攻略4.2:類似Python的zip函式Python函式
- oracle內部轉換函式雜談Oracle函式
- Python中使用內層函式的好處Python函式
- 函式進階· 第3篇《常用內建函式filter()、map()、zip(),怎麼用的呢?》函式Filter
- python常用函式進階(2)之map,filter,reduce,zipPython函式Filter
- 簡單介紹Python中的配對函式zip()Python函式
- Python內建函式示例Python函式
- python常用內建函式Python函式
- 1.5.5 Python內建函式Python函式
- Python內建函式(一)Python函式
- Python內建函式(二)Python函式
- Python 內建函式大全Python函式
- python內建函式大全Python函式
- python 常用內建函式Python函式
- python內建函式——sortedPython函式
- 返回Promise物件的函式,函式內部記得加try catch!Promise物件函式
- async、await和generator函式內部原理AI函式
- underscore 系列之內部函式 cb 和 optimizeCb函式
- 數學建模例題例 2.24 zip()函式使用示例函式
- python內建函式-eval()函式與exec()函式的區別Python函式
- 理解zip函式的工作流程函式
- 【Python】python內建函式介紹Python函式