[英]Python How do I remove leading carriage return from my print results?
我有以下循環遍歷列表的代碼。 它還使用 eval function 從列表中添加、刪除和刪除。 如何從打印結果中刪除前導回車? 不尾隨回車。
if __name__ == '__main__':
N = int(12)
O = ["insert 0 5",
"insert 1 10",
"insert 0 6",
"print",
"remove 6",
"append 9",
"append 1",
"sort",
"print",
"pop",
"reverse",
"print"]
J = []
p = []
for i in range(0, N, 1):
K = O[i]
if K.lstrip("\n").find(" ") > 0:
AK = K[0:K.find(" ")] + \
"(" + str(K[K.find(" ")+1:]).replace(" ", ",") + ")"
else:
AK = K + "()"
try:
eval("p."+AK.lstrip("\n"))
except (NameError, AttributeError):
eval(AK.lstrip("\n"))
print(p, sep="", end="")
OutPut below:
您的行AK=K+'()'
正在制作print()
命令。 並且沒有像p.print()
這樣的列表,這就是它引發異常並且eval(AK.lstrip("\n"))
移動到新行的原因。
編輯:按需代碼:
if __name__ == '__main__':
N = int(12)
O = ["insert 0 5",
"insert 1 10",
"insert 0 6",
"print",
"remove 6",
"append 9",
"append 1",
"sort",
"print",
"pop",
"reverse",
"print"]
J = []
p = []
for i in range(0, N, 1):
K = O[i]
if K.lstrip("\n").find(" ") > 0:
AK = K[0:K.find(" ")] + \
"(" + str(K[K.find(" ")+1:]).replace(" ", ",") + ")"
else:
if K=="print": AK=K
else: AK = K + "()"
try:
if AK=="print": eval(f"{AK}({p})")
else: eval("p."+AK.lstrip("\n"))
except (NameError, AttributeError):
print("something wrong")
#Output
[6, 5, 10]
[1, 5, 9, 10]
[9, 5, 1]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.