㈠ 用“python”怎么提取文件里的指定内容
python读取文件内容的方法:
一.最方便的方法是一次性读取文件中的所有内容并放置到一个大字符串中:
all_the_text = open('thefile.txt').read( )
# 文本文件中的所有文本
all_the_data = open('abinfile','rb').read( )
# 二进制文件中的所有数据
为了安全起见,最好还是给打开的文件对象指定一个名字,这样在完成操作之后可以迅速关闭文件,防止一些无用的文件对象占用内存。举个例子,对文本文件读取:
file_object = open('thefile.txt')
try:
all_the_text = file_object.read( )
finally:
file_object.close( )
不一定要在这里用Try/finally语句,但是用了效果更好,因为它可以保证文件对象被关闭,即使在读取中发生了严重错误。
二.最简单、最快,也最具Python风格的方法是逐行读取文本文件内容,并将读取的数据放置到一个字符串列表中:list_of_all_the_lines = file_object.readlines( )
这样读出的每行文本末尾都带有"
"符号;如果你不想这样,还有另一个替代的办法,比如:
list_of_all_the_lines = file_object.read( ).splitlines( )
list_of_all_the_lines = file_object.read( ).split('
')
list_of_all_the_lines = [L.rstrip('
') for L in file_object]
㈡ Python批量提取txt文件中的特定字符后的数字
2、待读取文件
是以":"作为分隔符的数据,每一行以回车结束。此文件为XXX.train
3、读取每一句中的汉字
1234567891011...file_train = os.path.join(rootDir,"data/train/rg_train_"+modle_date+"_"+aiscene+".train")with open(file_train, 'r')as fp:textlist = fp.readlines()for text in textlist:if ":" in text:L4ID = text.split(":")[-2]Msg = text.split(":")[-1]if query_start == Msg.strip(" "):print("Msg is in train:",Msg)...
代码中先获取文件,然后读取每一行,然后以":"作为分隔符。(-1代表倒数第一个,-2代表倒数第二个)
不管是txt文件还是xml文件还是其他的,都可以用这种方法来批量替换文件中字符串:
1234567891011121314151617# -*- coding:utf-8 -*-__author__ = 'ShawDa'import globxmls = glob.glob('xml_files/*.xml')for one_xml in xmls:print(one_xml)f = open(one_xml, 'r+', encoding='utf-8')all_the_lines = f.readlines()f.seek(0)f.truncate()for line in all_the_lines:line = line.replace('dog', 'pig')line = line.replace('cat', 'bike')f.write(line)f.close()
㈢ python提取文件夹中所有子文件夹下所有文件的某一行
分两步:
step1: 获取子文件 --> os.walk
step2:read 文件 --> 自己写啦
我写了个简版单的,你自己改权改
importos
defgetfiles(path=None):
path=os.path.abspath(path)ifpathelseos.getcwd()
forparent,folders,filesinos.walk(path):
ifnotfiles:
continue
else:
forfinfiles:
yieldos.path.join(parent,f)
defmain():
forfingetfiles():
print"openningfile%s"%f
pass
if__name__=="__main__":
main()
㈣ 怎么使用python提取json文件中的字段
例json文件,名字test.json,
{
"verson":"1.4.2",
"author":"johanna",
"type":"1"
}
python编码:
首先读取json文件内容,利用json.loads()转化为dict类型,遍历每一对专key,val
importjson
importos
try:
属t_str=open('./test.json','r').read()
t_json=json.loads(t_str)
fork,vint_json.items():
printk,v
exceptException,e:
printstr(e)
㈤ python随机提取文件中的某一列的任意一个值
需要某列的某个值?
文本格式
1 2 3
4 5 6
如果是文本的话首先f.readlines()获得所有行,
然后用随机函数,random.choice(array)随机获得列
strs.split()值转换成列表
再用随机函数random.choice(strs)
随机获得一个元素
如果是单元格的话
就是先获取单元格的行和列
然后用随机函数
random.randint(0, 有效行)
random.randint(0, 有效列)
table.cell_value(列,行)
就能获取任意值了