【问题标题】:How to fetch text file data in a variable in python?如何在python中的变量中获取文本文件数据?
【发布时间】:2021-03-26 08:38:43
【问题描述】:

在python中我们如何选择文本文件的第二行字符串。

我有一个文本文件,在那个文件中有一些数据是一行一行的_

Dog
Cat
Cow

如何获取第二行“Cat”并将该字符串存储在变量中。

f = open(“text_file.txt”, “r”)
var =    # “Cat”

我可以在不使用任何循环的情况下使用单行代码吗?或者像我们使用单行代码打开文件一样f = open(“text_file.txt”, “r”)

【问题讨论】:

  • var = f.readlines()[1]
  • 先生,当我运行此代码时 f = open("cred.txt", "r") apikey = f.readlines()[1] client_token = f.readlines()[2] 密码 = f.readlines()[3] print(apikey) print(client_token) print(password) 我收到类似这样的错误 Traceback(最近一次调用最后一次):文件“C:\Users\Nayan\PycharmProjects\Angel_Broking\main. py",第 9 行,在 client_token = f.readlines()[2] IndexError: list index out of range
  • 索引 1 不是 2 的意思是您能详细说明一下先生,我听不懂
  • 您要求使用 1 行解决方案来获得第 2 行。 readlines()[1] 会给你文件的 2nd 行,而不是第一行:readlines()[0] 会给你第一行。但是现在看来您想从文件中获取几行,而不仅仅是一行。这不能在一行中完成,因为您只能在打开的文件上调用一次readlines()。第一次读取文件中的所有行并返回它们的列表。这使用了排队,再次调用readlines() 会给你一个空列表。所以:mylist = f.readlines(); apikey=mylist[0]; client_token=mylist[1]

标签: python python-3.x file-handling filehandle


【解决方案1】:

我建议如下

with open('anim.txt','r') as f:
    var = f.readlines()[1].strip()

print(var)
  • [1]获取第二行
  • .strip() 删除字符串末尾的换行符
  • with open... 安全地打开/关闭文件

【讨论】:

    【解决方案2】:

    以这种模式打开你的文件:

    f = open('x.txt','r+',encoding='utf-8')

    然后您可以逐行读取文件:

    f.readlines()

    【讨论】:

    • 先生,当我运行此代码时 f = open('cred.txt', 'r+', encoding='utf-8') apikey = f.readlines()[1] client_token = f. readlines()[2] password = f.readlines()[3] print(apikey) print(client_token) print(password) 我收到类似这样的错误 Traceback(最近一次调用最后一次):文件“C:\Users\ Nayan\PycharmProjects\Angel_Broking\main.py",第 9 行,在 client_token = f.readlines()[2] IndexError: list index out of range
    猜你喜欢
    • 2012-01-30
    • 1970-01-01
    • 2015-09-01
    • 2021-06-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多