如何在Python的打印函数中读取数组的元素?

时间:2018-10-13 14:18:39

标签: 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函数中调用数组的元素?

4 个答案:

答案 0 :(得分:3)

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

array

但是您在循环中使用了print(f"{i} - {array[i-1]}") 函数4次。如您所说,如果只想使用print一次,则可以解压缩生成器表达式并使用print参数:

sep

答案 1 :(得分:1)

您想要的是:

self.dataSource = self.tableView.bind(to: query) { tableView, indexPath, snapshot in
let cell = tableView.dequeueReusableCell(withIdentifier: "reuseIdentifier", for: indexPath)
if (self.prevRow == indexPath.row) {
    print("repeated on:", indexPath.row)
}
self.prevRow = indexPath.row
return cell
}

但是最好在循环之前初始化数组,否则每次运行循环时都创建相同的数组。

所以,这样的事情更有效:

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

答案 2 :(得分:0)

您还希望捕获数组变量:id | category

答案 3 :(得分:0)

可以更改为此:

print(i, '-', array[i-1])

如果使用格式,只能用大括号{}来解释,外部array被视为字符串,因此可以使它像这样工作:

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