发布网友 发布时间:2022-04-26 17:29
共3个回答
懂视网 时间:2022-04-06 12:17
遍历列表 : 输出所有元素
依次遍历列表
效果图:
代码:
# 创建列表 stus = ['孙悟空','猪八戒','沙和尚','唐僧','白骨精','蜘蛛精'] # 依次遍历列表 print(stus[0]) print(stus[1]) print(stus[2]) print(stus[3])
通过while循环遍历列表
效果图:
代码:
# 创建列表 stus = ['孙悟空','猪八戒','沙和尚','唐僧','白骨精','蜘蛛精'] # 通过while循环遍历列表 i = 0 while i < len(stus): print(stus[i]) i += 1
通过for循环遍历列表 最好的遍历方法
效果图:
代码:
# 创建列表 stus = ['孙悟空','猪八戒','沙和尚','唐僧','白骨精','蜘蛛精'] # 通过for循环遍历列表 for i in stus: print(i)
推荐教程:《python教程》
热心网友 时间:2022-04-06 09:25
没有优雅的方法解决,只有不要使用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的值替换掉。
参考资料:python2.7.2官方帮助文档。
热心网友 时间:2022-04-06 10:43
list = ["apple", "banana", "grape", "orange"]
for x in range(len(list)):
print 'list[%d]:'%x,
for y in range(len(list[x])):
sys.stdout.write(list[x][y])
print
这样就没空格了
百分号是格式化的格式而已