gpt4 book ai didi

python - 格式化函数中的字符串

转载 作者:太空宇宙 更新时间:2023-11-03 16:34:57 25 4
gpt4 key购买 nike

我正在探索函数中的字符串格式化,所以假设我们有这个简单而丑陋的函数:

def my_string(z,a,b): 
return '%d' '%s' '%s' % (z, a, b)

z = 1
x = ['monkey', 'monkey2', 'monkey3']
y = ['banana', 'banana2', 'banana3']

for item in x and y:
print my_string(z, x, y)

我期待打印:

1 monkey banana
1 monkey2 banana2
1 monkey3 banana3

但它正在返回:

1['monkey', 'monkey2', 'monkey3']['banana', 'banana2', 'banana3']
1['monkey', 'monkey2', 'monkey3']['banana', 'banana2', 'banana3']

我根本无法理解为什么返回结果是这样的,而不是我期望的那样,print x[0]确实会打印x的第一项,即monkey 。我哪里想错了?

最佳答案

它不起作用,因为在每个循环中,您都会打印 xy 这是您的列表,而不是列表中的项目。试试这个代码:

def my_string(z,a,b): 
return '%d ' '%s ' '%s' % (z, a, b)

z = 1
x = ['monkey', 'monkey2', 'monkey3']
y = ['banana', 'banana2', 'banana3']

for item1,item2 in zip(x, y):
print my_string(z, item1, item2)

zip 使您能够通过返回元组同时迭代两个列表。请参阅here了解更多相关信息。

关于python - 格式化函数中的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37308948/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com