元组的问题

2024-05-29 00:05:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我知道这是一个初学者的问题,但我们都必须从某个地方开始(是的,我确实环顾了一下某某和YT)。你知道吗

我写这个:

firstName = ['Charles', 'Steve', 'Mary']
lastName = ['Manley', 'Perry', 'Shelly']
fullName = zip(firstName, lastName)

sayHelloTo = fullName
for i in sayHelloTo:
     print('Hello ' + i)

希望得到这个:

Hello Charles Manley
Hello Steve Perry
Hello Mary Shelly

我怎么能把列表变成元组呢?写这个的正确方法是什么?你知道吗

提前谢谢。你知道吗


Tags: hello地方zipfirstnamesteveytmaryfullname
3条回答

这正是您想要的:

firstName = ['Charles', 'Steve', 'Mary']
lastName = ['Manley', 'Perry', 'Shelly']
fullName = zip(firstName, lastName)

#unpack
for i,j in fullName:
    print("Hello {} {}".format(i,j))

印刷品:

Hello Charles Manley
Hello Steve Perry
Hello Mary Shelly

可以将iterable参数解包与*运算符一起使用:

for i in sayHelloTo:
    print('Hello', *i)

这将输出:

Hello Charles Manley
Hello Steve Perry
Hello Mary Shelly

当您使用for i in sayHelloTo进行迭代时,在循环的每次迭代中都将整个元组赋给变量i,因此print语句将打印“Hello”加上整个元组。你知道吗

因为每个元组包含两个元素(名字和姓氏),所以要在print语句中正确格式化元组的每个元素,需要完全解压元组,如下所示:

for first, last in sayHelloTo:
    print('Hello ' + first +" "+ last)

或者使用f字符串简化print语句:

for first, last in sayHelloTo:
    print(f'Hello {first} {last}')

相关问题 更多 >

    热门问题