python输出的挂起缩进
我正在尝试以以下格式打印一些数据:python输出的挂起缩进,python,string,format,Python,String,Format,我正在尝试以以下格式打印一些数据: Data 1: Foo1 Foo2 Foo3 Data 2: Stuff1 Stuff2 Stuff3 目前,我有一个变量跟踪数据集,并在列表中跟踪每个数据集的内容。直觉上,我似乎应该能够简单地做到: print("Data " + str(data_num) + ": ", end = "") for d in dataset: print(d.rjust(len(d) + 8) 问题
Data 1: Foo1
Foo2
Foo3
Data 2: Stuff1
Stuff2
Stuff3
目前,我有一个变量跟踪数据集,并在列表中跟踪每个数据集的内容。直觉上,我似乎应该能够简单地做到:
print("Data " + str(data_num) + ": ", end = "")
for d in dataset:
print(d.rjust(len(d) + 8)
问题是这个缩进超过了数据标签,给了我
Data 1: Foo1
Foo2
Foo3
...
我目前的解决办法是简单地写
print(*dataset, sep = "\n ")
代替for循环。从技术上讲,这给了我想要的输出,但似乎应该有一个比手动添加空间更令人满意的解决方案
提前谢谢 试试这个:
print("Data " + str(data_num) + ": ", end = "")
for k, d in enumerate(dataset):
print(''.join(['\t\t' if k else '', d]))
除第一行外,每行将添加8个空格
dataset = [['Foo1', 'Foo2', 'Foo3'], ['Foo1', 'Foo2', 'Foo3']]
for _ in xrange(len(dataset)):
print("Data " + str(_ + 1) + ":"),
append_tab = False
for d in dataset[_]:
if append_tab:
result = "\t" + d
else:
result = d
append_tab = True
print (result)
您可以使用/t(制表符)作为另一种更简单的解决方案。只需将\t用作制表符即可。您想要数据1:Foo1 Foo2 Foo3吗?