我希望能夠輸入類似 [1, 2, 3, 4, 5, 6, 7] 的內容并讓它回傳另一個陣列,例如 ['a'. 'b', 'c'] 我該怎么做?我試過這個,但我只能做一個數字。
arr = list(map(int, input("message > ").split()))
uj5u.com熱心網友回復:
您可以使用string.ascii_lowercase- 這是一串小寫字母 - 以及list如下所示的理解。
要處理多位數字的情況,您需要分隔輸入中的數字,例如使用空格 字符,然后在處理用戶輸入時拆分此字符。
import string
arr = [string.ascii_lowercase[int(i) - 1]
for i in input("message > ").split(' ')]
print(arr)
與用戶的互動示例:
message > 1 3 5 7 9 11
['a', 'c', 'e', 'g', 'i', 'k']
uj5u.com熱心網友回復:
我的理解是,您想通過單個輸入在串列中創建多個串列。
如果你知道你想要多少個陣列,你可以使用:
arr = [list(map(int, input("message > ").split())) for _ in range(3)]
輸出:
message > 1 2 3
message > 1 4 5
message > 1 3 4
[[1, 2, 3], [1, 4, 5], [1, 3, 4]]
如果你不知道你可以使用多少:
arr = [[i] for i in list(input("message > ").split(","))]
輸出:
message > 1 2 3, 1 4 5, 1 3 4
[['1 2 3'], [' 1 4 5'], [' 1 3 4']]
在第二個中,只需用逗號分隔輸入。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/417906.html
標籤:
上一篇:如何將此陣列寫入一個單元格并使用GAS使其像文本一樣?
下一篇:像這樣修改陣列會是什么樣的回圈?
