1

リスト (文字列ごとに) を作成する方法を見つけようとしています。これは、これらの文字列のそれぞれの文字を表す ASCII 値のリストです。

例えば。「hello」、「world」を次のように変更します。

[[104, 101, 108, 108, 111], [119, 111, 114, 108, 100]]

これまでの私のコードは次のとおりです。

words = ["hello", "world"]
ascii = []
for word in words:
    ascii_word = []
    for char in word:
        ascii_word.append(ord(char))
    ascii.append(ord(char))

print ascii_word, ascii

うまくいかないことはわかっていますが、正しく機能させるのに苦労しています。どんな助けでも大歓迎です。ありがとうございました

4

2 に答える 2

1

1 つの方法は、ネストされたリスト内包表記を使用することです。

>>> [[ord(c) for c in w] for w in ['hello', 'world']]
[[104, 101, 108, 108, 111], [119, 111, 114, 108, 100]]

これは、次のコードを簡潔に記述するだけの方法です。

outerlist = []
for w in ['hello', 'world']:
    innerlist = []
    for c in w:
        innerlist.append(ord(c))
    outerlist.append(innerlist)
于 2015-04-24T02:04:35.407 に答える