【问题标题】:How to separate characters in text file with python如何用python分隔文本文件中的字符
【发布时间】:2019-07-29 23:47:10
【问题描述】:

我正在制作一个 python 程序,我希望能够读取文本文件,我已经可以做到,但我想从中获取某些信息。例如,我的文本文件如下所示:

Red Banana = R LL R H SKG LGHE
Green Chicken = AH HGKE HGKELG GHEk
Cardbored Box = GHEHE HKEGLS GHEK
Awesome Man = G E GHLEKGH HEKG GEHLG

我想用等号分隔左列和右列。所以我会将“Red Banana”作为一个字符串,并将“R LL R H SKG LGHE”作为另一个字符串。如果我可以将所有左列放在一个列表中,那将是一个奖励。非常感谢。

【问题讨论】:

  • 您需要split 方法。提示:并像split('=')一样使用它
  • 到目前为止你尝试过什么?您是否考虑过使用string methods 中的任何一个?
  • 此问题缺少上下文或其他详细信息:请通过提供其他上下文来改进问题,最好包括您对问题的想法以及您为解决问题所做的任何尝试。这些信息可以帮助其他人识别您遇到的困难,并帮助他们写出适合您经验水平的答案。您还需要准确说明您的困难是什么,您的预期是什么,您得到了什么,以及任何追溯。

标签: python python-3.x text-files


【解决方案1】:
with open('test.txt') as f:
    lines = f.read().split('\n')
left = [line.split('=')[0].strip() for line in lines]
right = [line.split('=')[1].strip() for line in lines]
print(left)
print(right)

输出是

['Red Banana', 'Green Chicken', 'Cardbored Box', 'Awesome Man']
['R LL R H SKG LGHE', 'AH HGKE HGKELG GHEk', 'GHEHE HKEGLS GHEK', 'G E GHLEKGH HEKG GEHLG']

【讨论】:

    【解决方案2】:

    ComplicatedPhenomenon 已经对其进行了排序,但只是为了加分 - 要将列的左侧放入列表中,只需将最后一行中的“1”替换为“0”,即:

    with open('test.txt') as f:
        lines = f.read().split('\n')
    print([line.split('=')[0].strip() for line in lines])
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-27
      • 1970-01-01
      相关资源
      最近更新 更多