3

文字列を取得するにはどうすればよいですか:</p>

("h1", "h2", "h3, "h4")

そして、これらの値を数字に置き換えます1, 2, 3, 4か?

同様に、同じ操作をリストに対して実行するにはどうすればよいでしょうか?

4

2 に答える 2

5
 to_replace = ["h1","h2","h3","h4"]
 replaced = [ int(s.replace("h","")) for s in to_replace ]

これがあなたが望むものなら。

正確にはわかりません。"(\"h1\", \"h2\", \"h3\", \"h4\")"入力は文字通り文字列ではなく、文字列のリストであると想定しています。

また、最初の質問と同じように見えるため、2番目の質問の意味がわかりません。

それに応じて回答を更新します=)

于 2010-07-01T18:58:23.320 に答える
3

これにより、数字以外のすべての文字が取り除かれます( だけでなくh):

>>> s = ["h1", "h2" , "h3" , "h4"]
>>> [int(filter(lambda c: c.isdigit(), x)) for x in s]
[1, 2, 3, 4]

また

>>> s = ["x1", "b2" , "c3" , "h4"]
>>> [int(filter(lambda c: c.isdigit(), x)) for x in s]
[1, 2, 3, 4]
于 2010-07-01T19:45:37.840 に答える