【问题标题】:Problem with formatting my f string output in Python在 Python 中格式化我的 f 字符串输出的问题
【发布时间】:2022-01-04 15:13:31
【问题描述】:

我正在尝试按以下方式格式化我的代码输出:

预期:

 1 aggc tgtc aatg
13 ctag gcat agaa
25 gtcg tgct gtag
37 agat agtc tgat
49 agtc gc

但是,我总是得到以下输出:

1 aggc tgtc aatg13 ctag gcat agaa25 gtcg tgct gtag37 agat agtc tgat49 agtc gc

我不确定如何在应有的位置换行。有人可以帮我弄这个吗? 非常感谢!

到目前为止,这是我创建此输出的代码(它是某个函数的一部分):

to_return += f'{str(index_row): >} {block_row}'
return to_return

编辑:我遇到了另一个问题: 有谁知道我如何将第一行中的 1 向右对齐?我认为我的代码中的“>”符号可以解决问题,但我的 1 保持与左侧对齐。

【问题讨论】:

  • 您的代码没有任何换行符。当您的行结束时,您希望将\n 附加到字符串
  • 感谢您的帮助!有谁知道我如何将第一行中的 1 向右对齐?我认为我的代码中的“>”符号可以解决问题,但我的 1 保持与左侧对齐

标签: python formatting string-formatting


【解决方案1】:

只需在字符串末尾添加换行符 (\n):

to_return += f'{str(index_row): >} {block_row}\n'
return to_return

【讨论】:

  • 感谢您的帮助!我的代码正是它现在需要做的。
【解决方案2】:

在行尾添加换行符 (\n)。像这样:

to_return += f'{str(index_row): >} {block_row}'+"\n"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-03-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-08
    • 2023-03-30
    • 1970-01-01
    相关资源
    最近更新 更多