悬挂缩进的python输出

时间:2017-10-26 04:11:38

标签: 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
...

我目前的解决方案是简单地写

print(*dataset, sep = "\n        ")

代替for循环。这在技术上给了我正在寻找的输出,但似乎应该有一个比简单地手动添加空格更令人满意的解决方案。

提前致谢!

2 个答案:

答案 0 :(得分:1)

试试这个:

print("Data " + str(data_num) + ": ", end = "")
for k, d in enumerate(dataset):
    print(''.join(['\t\t' if k else '', d]))

除第一行外,每行增加8个空格。

答案 1 :(得分:0)

text_A <- c('apple','cherry','kiwi','Tangerine','apple','apple','kiwi')
text_B <- c('apple','banana','grapefruit','kiwi','mango','papaya', 'tangerine')

text_A[text_A %in% text_B]
## [1] "apple" "kiwi"  "apple" "apple" "kiwi" 

您可以使用 / t (标签)作为替代和更简单的解决方案。