【问题标题】:Getting strings from looping over a list of strings通过遍历字符串列表获取字符串
【发布时间】:2020-09-17 15:25:36
【问题描述】:

我正在尝试遍历 tasks 列表:

tasks = [
         'NR-AR', 'NR-AR-LBD', 'NR-AhR', 'NR-Aromatase', 'NR-ER', 'NR-ER-LBD',
         'NR-PPAR-gamma', 'SR-ARE', 'SR-ATAD5', 'SR-HSE', 'SR-MMP', 'SR-p53'
        ]

我得到的输出:

for task in range(len(tasks)):
    print(tasks[task])

是:

NR-AR
NR-AR-LBD
NR-AhR
NR-Aromatase
NR-ER
NR-ER-LBD
NR-PPAR-gamma
SR-ARE
SR-ATAD5
SR-HSE
SR-MMP
SR-p53

我无法做的是获得相同的输出,但每个任务都有"..."

例如:"SR-p53" 而不是 SR-p53

【问题讨论】:

标签: python python-3.x


【解决方案1】:

在 print 方法中使用 'f' 来格式化,然后包含双引号。

请看下面的代码:

tasks = [
      'NR-AR', 'NR-AR-LBD', 'NR-AhR', 'NR-Aromatase', 'NR-ER', 'NR-ER-LBD',
      'NR-PPAR-gamma', 'SR-ARE', 'SR-ATAD5', 'SR-HSE', 'SR-MMP', 'SR-p53'
    ]

for task in range(len(tasks)):
    print(f'"{tasks[task]}"')

【讨论】:

  • 我可以使用它来将“SR-p53”作为字符串分配给变量而不是仅用于打印吗??
  • @TrikiSadok 请查看我提供的副本 (stackoverflow.com/questions/20056548/…) 它也解决了这个问题
  • @Asocia 我相信他的意思是用引号将其保存为字符串变量,这可以通过s = '"SR-p53"' 完成
  • 如果你想指定“SR-p53”,你可以把它放在像string = ' "SR-p53" '这样的单引号中。如果您打印变量字符串print(string),输出将是“SR-p53”。
【解决方案2】:

您可以通过以下任何一种方式实现此目的:

  1. 使用字符串的格式化方法

     print('"{}"'.format(tasks[task]))
    
  2. 用'f'格式化字符串:

     print(f'"{tasks[task]}"')
    
  3. 使用模数运算符进行格式化:

     print('"%s"' % tasks[task])
    
  4. 使用字符串连接:

     print('"' + tasks[task] + '"')
    

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-18
    • 2014-09-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-15
    相关资源
    最近更新 更多