python - 如何在 Python 的 print 函数中读取数组的元素?

标签 python arrays string f-string

我想创建以下输出只使用打印函数一次:

1 - Add
2 - Subtract
3 - Divide
4 - Multiply

为此,我使用了以下代码:

> for i in range(1, 5):
>     array = ["Add", "Subtract", "Divide", "Multiply"]
>     print(f"{i} - array[{i-1}]")

但我得到的输出是:

1 - array[0]
2 - array[1]
3 - array[2]
4 - array[3]

你能帮我看看我做错了什么吗? 如何在 print 函数中调用数组元素?

最佳答案

您需要在 {} 中移动列表索引,否则 array 将被解释为字符串:

print(f"{i} - {array[i-1]}")

但是您在循环中使用了 4 次 print 函数。如果,如您所说,您希望只使用一次 print,您可以解压缩生成器表达式并使用 sep 参数:

array = ['Add', 'Subtract', 'Divide', 'Multiply']
print(*(f'{idx} - {val}' for idx, val in enumerate(array, 1)), sep='\n')

关于python - 如何在 Python 的 print 函数中读取数组的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52793877/

相关文章:

c++ - 通过构造函数在类中初始化二维数组

c# - Javascript/ASP.NET MVC 4 - 在 Javascript 中使用 C# 字符串

使用 C 计算并从字符串中获取整数

php - Shunting Yard 需要在 PHP 中实现,解释和解析字符串执行数学比较并返回 bool 结果

python - 有没有更简洁的方法来获取某些内容的第一次出现?

python - Windows 10 中的 conda 更新失败

java - 字符串仅等于字符串的一部分

python - 计算二叉树中的节点数

python - 如何关闭 Flask 中的服务器发送事件连接?

arrays - 将递归函数转换为代表我的算法输出的迭代函数