どうすれば次のようなものを作ることができますか
x = '1 2 3 45 87 65 6 8'
>>> foo(x)
[1,2,3,45,87,65,6,8]
私は完全に立ち往生しています.インデックスでそれを行うと、1桁以上の数字が分解されます. 助けてください。
シンプルなラインは...
print (map(int, x.split()))
ある人が賢明に私を修正したように、python >=3 では、次のようになります。
print(list(map(int,x.split())))
以前のバージョンのユーザーにすることもできます。
わかりやすい説明をするだけです。
str.split()
文字列をリストに分割するstring メソッドを使用できます。この方法の詳細については、こちらをご覧ください。
例:
def foo(x):
x = x.split() #x is now ['1','2','3','45', ..] the spaces are removed.
for i, v in enumerate(x): #Loop through the list
x[i] = int(v) #convert each element of v to an integer
それはそれを行う必要があります!
>>> x
[1, 2, 3, 45, 87, 65, 6, 8]