【发布时间】:2019-11-22 05:03:14
【问题描述】:
我想要做的是打印输入的倒数。 输入=“1 3 4 2” 输出=“2 4 3 1”
我想知道为什么我的代码会显示这个错误:
if __name__ == "__main__":
n = 4
arr = map(int, "1 3 4 2".split())
ar = list(arr)
ar.reverse()
string = ' '
string.join(ar)
print(string)
错误:
string.join(ar)
TypeError: sequence item 0: expected str instance, int found
如果我将 map 参数从 int 更改为 str,它不会显示任何结果。
【问题讨论】:
-
删除
map(int部分,它应该可以工作。 -
使用列表理解而不是
list(map()),嗯。看起来您没有将join的结果保存在任何地方。 -
您正在尝试将 int 与字符串连接,最好删除 int
-
arr = map(int, "1 3 4 2".split())"1 3 4 2" 应该是该格式的输入。我简化了代码并试图理解python。这就是为什么我需要 map() 并将其变成一个列表。
标签: python