我想从"Francisco"开始打印并以"antonio"结尾,但随着数字的增加,我真的不知道该怎么说,我是新来的,谢谢你的帮助!
list = ['Francisco', 'Marcelle', 'Olivia', 'José', 'Guilherme', 'Maria', 'Arthur', 'Lucas', 'Lurdes', 'Antonio']
for x in range(1,11) :
print(list[x] "your number on the list is, " + str(x) + ".")
在最后一行,我发现如何保持文本,增加增加的数字,但我不知道如何打印不同的元素与范围,为,我开始编程不长
的例子:弗朗西斯科,你的号码是1Marcelle,你的号码是2安东尼奥,你的号码是10
我认为这是你想要打印的内容:弗朗西斯科,你名单上的号码是:1Marcelle,你的号码是2奥利维亚,名单上你的号码是3你在单子上的号码是:4吉列尔姆,名单上你的号码是:5玛丽亚,你的号码是:6亚瑟,你名单上的号码是:7卢卡斯,你名单上的号码是:8你在名单上的号码是:9安东尼奥,你名单上的数字是:10如果是这种情况,那么您可以使用以下代码:
L = ['Francisco', 'Marcelle', 'Olivia', 'José', 'Guilherme', 'Maria',
'Arthur', 'Lucas', 'Lurdes', 'Antonio']
for i in range (len(L)):
print(L[i],"your number on the list is:",i+1)
您已经接近正确的代码
list = ['Francisco', 'Marcelle', 'Olivia', 'José', 'Guilherme', 'Maria', 'Arthur', 'Lucas', 'Lurdes', 'Antonio']
for x in range(0,len(list)) :
print(list[x] + " your number on the list is " + str(x) + ".")
你的修改
你做错了什么:
- 您忘记了
list[x] + " your number on the list is "
中的连接+ - 您从
range
的索引1开始,但列表从索引0开始
我改进的地方:
- 在范围内,如果事先不知道列表的长度,使用
len(list)
祝你学习Python和练习得愉快!:)
下面是你正在寻找的吗?
names = ['Francisco', 'Marcelle', 'Olivia', 'José', 'Guilherme', 'Maria', 'Arthur', 'Lucas', 'Lurdes', 'Antonio']
for idx, name in enumerate(names, 1):
print(f'{name}, your number is {idx}')
输出Francisco, your number is 1
Marcelle, your number is 2
Olivia, your number is 3
José, your number is 4
Guilherme, your number is 5
Maria, your number is 6
Arthur, your number is 7
Lucas, your number is 8
Lurdes, your number is 9
Antonio, your number is 10
您可以使用enumerate()
将start
参数设置为1 (因为您需要从1开始计数)。
注意:不要使用list
作为变量名。这是python的保留词
lst = ['Francisco', 'Marcelle', 'Olivia', 'José', 'Guilherme', 'Maria', 'Arthur', 'Lucas', 'Lurdes', 'Antonio']
for i,v in enumerate(lst,start=1):
print(f'{v}, your number is {i}')
Francisco, your number is 1
Marcelle, your number is 2
Olivia, your number is 3
José, your number is 4
Guilherme, your number is 5
Maria, your number is 6
Arthur, your number is 7
Lucas, your number is 8
Lurdes, your number is 9
Antonio, your number is 10
您在这里犯了几个错误,其中一些比其他的更容易破坏代码。我把它们列在这里。
- 首先不要将列表名作为变量名,例如changelist到list_of_names. list命名空间已经被python使用,如列表类所示。
- list从0开始。从1开始,一直到11。因此,你将列出索引将运行的范围。将for循环更改为
for i, name in enumerate(list_of_names):
这里i
已经有了编号,name
已经有了名称。
可以在print语句中使用。
或
for i in range(len(list_of_names)):
- 打印语句没有正确格式化,一种更好的格式化方法是使用f字符串。
print(f"{list[x]} your number on the list is, {str(x)}.")
所有这些将导致下面的代码片段加在一起。
list_of_names = ['Francisco', 'Marcelle', 'Olivia', 'José', 'Guilherme', 'Maria', 'Arthur', 'Lucas', 'Lurdes', 'Antonio']
for x in range(len(list_of_names)):
print(f"{list[x]} your number on the list is, {str(x+1)}.")
祝你学习好运!