以下代码:
c=0 while c < len(demolist):
print ’demolist[’,c,’]=’,demolist[c]
c=c+1
创建此输出:
demolist[ 0 ]= life
demolist[ 1 ]= 42
demolist[ 2 ]= the universe
demolist[ 3 ]= 6
demolist[ 4 ]= and
demolist[ 5 ]= 7
demolist[ 6 ]= everything
在while循环中打印的demolist[',c,']
格式有什么用?为什么这会在括号中给出一个数字,而将demolist[c]
放在那里只打印出那个?
答案 0 :(得分:5)
print语句接收四个参数(以逗号分隔):
’demolist[’ # string
c # integer
’]=’ # string
demolist[c] # result of list access
编写该行的更清晰的方法是:
print 'demolist[ {0} ]= {1}'.format(c, demolist[c])
看到它在线工作:ideone
注意:您可能还需要考虑在此使用enumerate
而不是while循环。
for n, elem in enumerate(demolist):
print 'demolist[ {0} ]= {1}'.format(n, elem)
看到它在线工作:ideone
答案 1 :(得分:2)
print ’demolist[’,c,’]=’,demolist[c]
打印字符串"demolist["
,c
的值,字符串"]="
和demolist[c]
的值,用空格分隔。
答案 2 :(得分:1)
c
是一个整数。 demolist[c]
会从列表c
返回索引demolist
的值。
print ’demolist[’,c,’]=’
打印一系列对象,并隐式转换为字符串(这就是您不需要将c(整数)显式转换为字符串的原因)。
编写此代码的更好方法是
for idx, item in enumerate(demolist):
print 'demolist[%d] = %s' % (idx, item)