我有这个输入P (0, 2,+1) (2, 0, -1) (0, 4,+1) (4, 0, -1)
,我想让它以这种方式打印出来[(0, 2, 1), (2, 0, -1), (0, 4, 1), (4, 0, -1)]
。然而,由于输入中的额外空间,我遇到了这个错误。在没有对输入进行任何更改的情况下,我想知道是否有人可以提供建议?由于
algorithm_type_2 = list(eval(user_input_2))
File "<string>", line 1
(0,,2,+1),(2,,0,,-1),(0,,4,+1),(4,,0,,-1)
^
SyntaxError: invalid syntax
user_input = input().split()
# input_list = user_input.split()
# algorithm_type = 'X'
algorithm_type = user_input.pop(0)
user_input_2 = ','.join(user_input)
algorithm_type_2 = list(eval(user_input_2))
print(user_input_2)
print(algorithm_type_2)
我不确定上下文等。我知道这很难看,但在这种情况下,你可以添加一个分裂字符,这样就有一个简单的字符可以分裂。我说分开了吗?
这是我所做的。将右括号替换为右括号和"$"然后按"$"分割。
user_input = input().replace(")",")$").split("$")
# input_list = user_input.split()
# algorithm_type = 'X'
algorithm_type = user_input.pop(0)
user_input_2 = ','.join(user_input)
algorithm_type_2 = list(eval(user_input_2))
print(user_input_2)
print(algorithm_type_2)
这给了我你想要的输出。
= RESTART: C:/Users/Jeremy Wright/Desktop/Desktop Mess/Not Work/StackOverflow Stuff/example.py
(0, 2,+1) (2, 0, -1) (0, 4,+1) (4, 0, -1)
(2, 0, -1), (0, 4,+1), (4, 0, -1),
[(2, 0, -1), (0, 4, 1), (4, 0, -1)]
>>>