Python文件读取
我想从一个文件中读取以下文本,一批10行。每行中的每个值都以特定的变量形式到达,稍后我将以连续的方式绘制它们。以下是文件数据格式:Python文件读取,python,linux,python-2.7,Python,Linux,Python 2.7,我想从一个文件中读取以下文本,一批10行。每行中的每个值都以特定的变量形式到达,稍后我将以连续的方式绘制它们。以下是文件数据格式: Xus level 5 : var1 = 885775, var2 = 50 Xus level 4 : var1 = 885710, var2 = 25 Xus level 3 : var1 = 885705, var2 = 25 Xus level 2 : var1 = 885640, var2 = 100 Xus level 1 : var1 = 885610
Xus level 5 : var1 = 885775, var2 = 50
Xus level 4 : var1 = 885710, var2 = 25
Xus level 3 : var1 = 885705, var2 = 25
Xus level 2 : var1 = 885640, var2 = 100
Xus level 1 : var1 = 885610, var2 = 275
Yus level 1 : var3 = 885510, var4 = 6875
Yus level 2 : var3 = 885505, var4 = 500
Yus level 3 : var3 = 885500, var4 = 225
Yus level 4 : var3 = 885465, var4 = 25
Yus level 5 : var3 = 885460, var4 = 100
... (continue above format with changed values...)
我想用python代码来阅读这篇文章。将这些值存储在一些变量中,然后一次性绘制10行,然后在一些while循环中进行一些睡眠,我会读取其他10行的数据并绘制它们,然后重复这些内容,直到文件结束。这应该行得通
将file name.txt更改为文件名
# open your file (Your file name.txt is the file name in read mode (r))
file = open(Your file name.txt", "r")
# for each line in Your File
for line in file:
# Split each word that is inbetween commers into seperate variables
details =line.split(", ")
Level1 = details[0]
Level2 = details[1]
这将在Level1中保存
Yus level{number} : var1 = {number}
第二级
var2=50
不知道如何摆脱Yus级别的“1”
它一次只能执行一个操作,可以根据需要进行修改。只需按空格分割每行,然后按索引获取列:
# open file
file = open("filename", "r")
# for each line the file 'filename'
for line in file:
# split the line in between spaces:
words = line.split(" ")
# get the columns by position:
level = words[2]
var_name_1 = words[4]
var_value_1 = words[6].split(",")[0] # get rid of ,
# etc
# do something here ...
# perhaps add to a list:
# array_value_1.append(var_value_1)
如果你想在python中使用sed和awk,为什么还要用sed和awk来标记呢?你的代码在哪里显示了你的努力?@LeBlue yours works allot比我的好,但是在单词[4]之后不会有一个,谢谢。如果我想读10行,那么当我读完这10行后,我想读下10行。这只是每行上的一个循环,我想读它,但一旦我读了10行,我会做一些处理,然后我会继续同样的。明白了吗?谢谢。如果我想读10行,那么当我读完这10行后,我想读下10行。这只是每行上的一个循环,我想读它,但一旦我读了10行,我会做一些处理,然后我会继续同样的。了解了?