【问题标题】:Reading inputs written in different lines from a file and storing each input inside a list从文件中读取以不同行写入的输入并将每个输入存储在列表中
【发布时间】:2015-09-03 02:14:07
【问题描述】:

我正在尝试读取一个名为 one.txt 的文件,其中包含以下内容:

hat
cow
Zu6
This is a sentence

我正在尝试将写在每行上的每个字符串存储在列表中。例如,我的输出列表应包含以下元素:

['hat', 'cow', 'Zu6', 'This is a sentence']

这是我的做法:

def first(ss):
    f = open(ss, 'r')
    text = f.readline()
    f.close()
    lines = []
    li = [lines.append(line) for line in text]
    print li

first('D:\\abc\\1\\one.txt')

但是,当我尝试打印 li 时,我得到的输出如下:

[None, None, None, None]

我的方法有什么问题?

【问题讨论】:

标签: python python-2.7


【解决方案1】:
print list(open("my_text.txt"))

可能是一种非常简单的方法......

为了养成好习惯,ofc 的人会大喊大叫悬空指针

with open("my_text.txt") as f:
     print list(f) 

或者

f.readlines()

你可能需要去掉一些换行符

[line.strip() for line in f]

【讨论】:

  • 我尝试使用 readlines() 方法,但仍然得到相同的输出。您以前的解决方案对我有用。不过,我仍然想知道我的方法出了什么问题。
  • a_list.append(value) 更改列表并返回None ...尝试打印lines
猜你喜欢
  • 2021-12-03
  • 2017-01-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-08-07
  • 2013-03-18
  • 1970-01-01
相关资源
最近更新 更多