5

list以下をに変換するにはどうすればよいstringですか?

list1= [[1, '1', 1], [2,'2',2], [3,'3',3]]

Result: '1 1 1'
        '2 2 2'
        '3 3 3'

ありがとう

4

7 に答える 7

8

Pythonのように見えます。リスト内包表記はこれを簡単にします:

list1= [[1, '1', 1], [2,'2',2], [3,'3',3]]
outlst = [' '.join([str(c) for c in lst]) for lst in list1]

出力:

['1 1 1', '2 2 2', '3 3 3']
于 2009-06-10T03:37:35.413 に答える
1

各配列でjoinを呼び出すことができます。元:

list1= [[1, '1', 1], [2,'2',2], [3,'3',3]]

stringified_groups = []

list1.each do |group|
  stringified_groups << "'#{group.join(" ")}'"
end

result = stringified_groups.join(" ")

puts result

これは、各グループをループします。グループをスペースで結合してから、一重引用符で囲みます。これらの各グループは配列に保存されます。これは、次のステップでのフォーマットに役立ちます。

文字列がスペースで結合される前のように。次に、結果が印刷されます。

于 2009-06-10T03:43:02.123 に答える
1

ここにワンライナーがあります

>>> print "'"+"' '".join(map(lambda a:' '.join(map(str, a)), list1))+"'"
'1 1 1' '2 2 2' '3 3 3'
于 2009-06-10T03:49:13.467 に答える
0

これで終わった:

for a, b, c in data:
    print(repr(a)+' '+repr(b)+' '+repr(c))

出力を a に書き込む必要textfileがあり、 write() メソッドは type のみを受け取ることができstrました。ここでrepr()関数が役に立ちました

repr()- Input: object; Output: str

...私はPythonで作業していると述べるべきでした...ご意見ありがとうございます

于 2009-06-11T12:42:42.343 に答える
-2

ルビーかもしれません、その場合あなたは次のようなことをするでしょう:

list = [[1, '1', 1], [2,'2',2], [3,'3',3]]
list.join(' ')

その結果、「1 1 1 2 2 2 333」になります。

于 2009-06-10T03:42:46.273 に答える