划定读取文件
我不太确定该怎么问这个问题,所以如果你不太明白,我可以再试着解释一下。
我有一个文件叫做 example.txt,我想把它导入到我的Python程序里。在这里,我会对里面的内容进行一些计算,还有其他一些不相关的事情。
我不想自己一个一个地导入这个文件,逐行查看并提取我想要的信息……Python能不能帮我做到这一点?也就是说,如果我把 .txt 文件结构整理得当(比如每一行都是用等号分隔的键值对),Python有没有什么现成的方法可以处理这些内容,让我直接使用呢?
3 个回答
还有另一种方法——你可以创建一个有效的 Python 文件(比如定义一个列表、字典或者其他什么),然后用下面的代码读取它的内容:
f = open('file.txt', r)
content = f.read() #assuming file isn't too long
接着你只需要解析它:
parsedContent = eval(content)
你可以把任何环境传给 eval(具体可以查看 文档),所以它可能无法访问你的全局变量和局部变量。这种做法是 不安全 和错误的,但在一些小程序中,如果这个程序不会被分享,也不会从网络或者所谓的 恶意用户 那里获取 'file.txt',你是可以使用它的。
当然可以!请看下面的内容:
在编程中,有时候我们需要让程序做一些重复的事情。比如说,我们想要让程序在一段时间内不断地执行某个操作,这时候就可以用“循环”这个概念。简单来说,循环就是让程序重复做某件事情,直到满足某个条件为止。
想象一下,你在做一个简单的任务,比如数数。你可以从1数到10,每数一个就停一下,然后继续数。这个过程就像是一个循环:从1开始,每次加1,直到数到10为止。
在代码中,循环通常有几种不同的写法,但它们的目的都是一样的,就是让程序重复执行某些指令。这样可以节省时间和精力,因为你不需要一行一行地写出每个步骤。
希望这个解释能帮助你理解循环的基本概念!如果你有更多问题,随时可以问我。
for line in open("file")
key, value = line.strip().split("=")
key=key.strip()
value=value.strip()
do_something(key,value)
with open("example.txt") as f:
for line in f:
key, value = line.strip().split("=")
do_something(key,value)
看起来这是一个不错的起点,如果我理解得没错的话。你需要使用 Python 2.6 或 3.x 版本。
另一个可以参考的地方是 csv
模块,它可以处理用逗号分隔的值文件——你也可以告诉它用 =
作为分隔符。这样可以减少一些之前例子中的“手动操作”——不过看起来你的例子并不特别需要这种简化。
还有一个想法:
with open("example.txt") as f:
d = dict([line.strip().split("=") for line in f])
现在这个简洁又符合 Python 风格 :)