我有一个有效的解决方案,但它太糟糕了。我经常写这样的东西,然后只是厌恶地看着它,但是这个东西就这样留下来太恶心了……尤其是因为它只是列表到字符串操作。我很尴尬。我对更简洁的解决方案感兴趣。有人有更简洁的方法将每个选项参数及其参数打印在单独的行上吗?
sys.argv[1:] = parameter_set
print("\nGenerating parameter set: ")
parameter_set_string = ""
first_iter = True
for each in parameter_set:
if each[0] == "-" and first_iter == False:
print(parameter_set_string)
parameter_set_string = each
else:
if first_iter:
parameter_set_string += each
first_iter = False
else:
parameter_set_string += ' "' + each + '" '
print(parameter_set_string)
输出:
Generating parameter set:
--dates "2024-04-30" "2024-04-29" "2024-04-28" "2024-04-27"
--names "johnson" "woody" "richard" "willy"
-o "/home/stamos/pickle/pics/name_brainstorming"
Generating parameter set:
--dates "2024-04-26" "2024-04-25" "2024-04-24"
--names "anaconda" "black mamba" "python"
-o "/home/stamos/pickle/pics/name_brainstorming"
我根据你的输出制作了一个模型输入。我希望这是正确的。
parameter_set = [
"--dates", "2024-04-30", "2024-04-29", "2024-04-28", "2024-04-27",
"--names", "johnson", "woody", "richard", "willy",
"-o", "/home/stamos/pickle/pics/name_brainstorming",
]
print("\nGenerating parameter set: ", end="")
for param in parameter_set:
if param[0] == "-":
print(f"\n{param}", end="")
else:
print(f" \"{param}\"", end="")
print()