[英]How to print a concatenation of a string with a list of strings in a loop
我有一個列表列表,我想刪除所有括號、命令等 ("[],'")
a=3
c=[["A ",["| "]*a],
[" ",["|———"]*a],
["B ",["| "]*a],
[" ",["|———"]*a],
["C ",["| "]*a],
[" ",["|———"]*a]
]
for line in c:
print(*line, sep="")
我想要這樣的 output :
A | | |
|———|———|———
B | | |
|———|———|———
C | | |
|———|———|———
但我得到了這個 output:
A ['| ', '| ', '| ']
['|———', '|———', '|———']
B ['| ', '| ', '| ']
['|———', '|———', '|———']
C ['| ', '| ', '| ']
['|———', '|———', '|———']
[Program finished]
你的問題是你有嵌套列表的三個深度
根據您的條件,您可以更改生成表格的方式,使其只有兩個深度:
a=3
c=[["A "] + ["| "]*a,
[" "] + ["|———"]*a,
["B "] + ["| "]*a,
[" "] + ["|———"]*a,
["C "] + ["| "]*a,
[" "] + ["|———"]*a
]
for line in c:
print(*line, sep="")
...或更改打印方式:
a=3
c=[["A ",["| "]*a],
[" ",["|———"]*a],
["B ",["| "]*a],
[" ",["|———"]*a],
["C ",["| "]*a],
[" ",["|———"]*a]
]
for head, line in c:
print(head, *line, sep="")
有趣的問題。 我認為以下內容可以使用給定的輸入滿足您的要求。
for line in c:
print("".join(["".join(x) for x in line]), sep="")
由於 python 中"a"*3
是"aaa"
,因此您實際上可以使用如下所示的內容。
a=3
c=[
["A ","| "*a],
[" ","|———"*a],
["B ","| "*a],
[" ","|———"*a],
["C ","| "*a],
[" ","|———"*a]
]
for line in c:
print(*line, sep="")
Output:
A | | |
|———|———|———
B | | |
|———|———|———
C | | |
|———|———|———
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.