python列表遍歷
㈠ python遍歷一個列表 前面有個索引
>>>x=[chr(i)foriinrange(97,97+26)]
>>>x
['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z']
>>>fori,vinenumerate(x):
print("{}{}".format(i,v))
0a
1b
2c
3d
4e
5f
6g
7h
8i
9j
10k
11l
12m
13n
14o
15p
16q
17r
18s
19t
20u
21v
22w
23x
24y
25z
你想找的是enumerate
㈡ python 如何用循環遍歷多重列表
>>> def my_print(s):
....... if type(s) == str:
... ..........print s
... .....else:
... ..........for i in s:
... ..........。。。my_print(i)
...
>>> d = ['li', ['mark', 'jim', 'lily', ['lucy', 'gao']]]
>>> my_print(d)
li
mark
jim
lily
lucy
gao
>>>
㈢ python中遍歷list 是什麼 意思
說通縮一點,就是循環從第一個元素到最後的元素依次訪問一次。
㈣ python遍歷列表時為什麼只遍歷了兩個而不是列表裡的所有元素呢
defmake_great(names):
great_names=[]
foriinnames:
great_names.append("graet"+i)
print(great_names)
returngreat_names
㈤ python中使用for循環遍歷列表,出現多遍歷一次為什麼
改成for i in range(len(students))
㈥ python如何遍歷2個list
找兩個list元素少的,index遍歷完所有的,遍歷完後,把此時的index記住。然後直接循環那個較長list的剩餘部分。代碼可以參考下面的
list1=[1,2,3,4,5,6,7]
list2=['a','b','c','d']
min_length=len(list1)iflen(list1)<len(list2)elselen(list2)
max_length=len(list1)iflen(list1)>len(list2)elselen(list2)
max_list=list1iflen(list1)>len(list2)elselist2
foriinrange(min_length):
printlist1[i]
printlist2[i]
forjinrange(i+1,max_length):
printmax_list[j]
㈦ python遍歷多重嵌套列表
㈧ python用for遍歷列表時不能修改列表值嗎
首先,可以肯定的是,for 循環遍歷時可以修改列表值。
那麼問題出在哪?在for 循環中的賦值語句magician='the Great' + magician,這個語句並沒有改變列表元素,在for magician in magicians中,magician 只是一個得到了列表元素的值的臨時變數,修改這個臨時變數並不會影響的列表裡的值。
原代碼相當於:magician =magicians[i], magician ='theGreat'+magician, 很明顯,這里沒有影響到列表元素,而是只改變了臨時變數。
可以使用以下代碼:
for i in range(len(magicians)):
magicians[i] = 'the Great' + magicians[i]
㈨ python中列表的遍歷
沒有優雅的方法解決,只有不要使用print語句,如樓上所說,或者使用python3.X中的print函數(通過
from __future__ import print_function使能print函數形式)
其實,在python2.X手冊中對print語句描述說:(python2.7.2官方幫助文檔)
一個空格會被自動列印在每個對象前,
除非:(1)還沒有輸出寫到標准輸出中
(2)當最後一個寫到標准輸出的是一個除了空格『 』的空白字元
(3)當最後寫到標准輸出的不是一個print語句。
所以在apple、banana等每個字元前都有一個空格。(apple的a前也有空格呢!)
一個好的解決辦法是使用python3.X中的print函數。
通過在文件前面加上:
from __future__ import print_function
就可以使用print的函數形式了。
print函數的語法:
print([object, ...][, sep=' '][, end='\n'][, file=sys.stdout])
默認下,若沒有指定sep,則使用空格。沒指定end,則使用換行符。沒指定輸出文件則輸出到標准輸出。
例如:print('hello','world',sep='-',end='#')輸出:
hello-world#
所以,你的程序可改為:
from __future__ import print_function
list = ["apple", "banana", "grape", "orange"]
for x in range(len(list)):
print('list[%d]:'%x,end='')
for y in range(len(list[x])):
print(list[x][y],sep='',end='')
print('')
至於: 'list[%d]:'%x 這里的百分號,是一個對字元串的操作符。百分號使得百分號前面的字元串中
的%d被百分號後的x的值替換掉。
㈩ Python。for遍歷列表,一個小問題。
最好不好這樣一邊遍歷一邊刪除,這樣可以:
[i for i in a if not type(i) is str]