① python怎么从一个文件中读取训练集
在读取文件之前,我们先创建一个文本文件resource.txt作为源文件。
resource.txt
my name is joker,
I am 18 years old,
How about you?
如何读取文件全部内容,我们编写到reader.py文件中。
reader.py
1 with open('resource.txt') as file_obj:2 content = file_obj.read()3 print(content)4
需要注意的是需要将resource.txt文件与read.py 放在同一目录下。
运行后的结果如下:
解释:open函数接收一个参数,此参数为将被读取内容的文件名,在调用之后返回表示这个文件的对象,Python将之存储在后面的变量(file_obj)中,关键字 with 在我们不再需要使用文件的时候将其关闭。
上面的代码中open() 函数中传入的是一个相对路径,相对路径会从当前文件(reader.py)所在文件夹下查找指定文件(resource.txt),如果文件不在当前文件夹下,可以使用绝对路径。Linux系统绝对路径如:
/home/joker/dic这样的,Windows系统的绝对路径如:C:/pyhton_workspace/dic 这样的。
② Python如何从文件读取数据
1.1 读取整个文件
要读取文件,需要一个包含几行文本的文件(文件PI_DESC.txt与file_reader.py在同一目录下)
PI_DESC.txt
3.1415926535
8979323846
2643383279
5028841971
file_reader.py
with open("PI_DESC.txt") as file_object:
contents = file_object.read()
print(contents)
我们可以看出,读取文件时,并没有使用colse()方法,那么未妥善的关闭文件,会不会导致文件收到损坏呢?在这里是不会的,因为我们在open()方法前边引入了关键字with,该关键字的作用是:在不需要访问文件后将其关闭
1.2文件路径
程序在读取文本文件的时候,如果不给定路径,那么它会先在当前目录下进行检索,有时候我们需要读取其他文件夹中的路径,例如:
③ python对文本文件的读有哪些方法,写有哪些方法
1 文件读取全文本操作
在一定场景下我们需要把文本全部内容读取出来,进行处理。python提供三种函数读取文件,分别是read readline readlines,
read():读取文件的全部内容,加上参数可以指定读取的字符。
readline():读取文件的一行。
readlines():读取文件的所有行到内存中。
不同场景下我们可以选择不同函数对文件进行读取。
1.1 方法一
file_name = input("请输入你要打开的文件的完整路径及名称")
file= open(file_name, "r")
txt=file.read()
# 全文本的处理
file.close()
使用read函数将文件中的内容全部读取,放在字符串变量txt中。这样操作适合于文本较小,处理简单的情况,当文件较大时,这种方式处理时不合适的。一次性读取较大的文件到内存中,会耗费较多的时间和资源。这时候分批处理效果更好。
1.2 方法二
file_name = input("请输入你要打开的文件的完整路径及名称")
file= open(file_name, "r")
txt= file.read(4)
# 文本的处理while txt != ""txt= file.read(4)
# 批量文本处理
file.close()
这种方法适合于分批处理文本信息,每次批量读入,批量处理,不会对内存造成较大的压力。
1.3 方法三
file_name = input("请输入你要打开的文件的完整路径及名称")
file= open(file_name, "r")for line infile.readlines():
# 处理每一行数据
file.close()
这种处理方式适合处理以行为分割特点的文本,并且文本较小,因为这种处理方式需要一次性把文件所有内容读取到内存中。
1.4 方法四
file_name = input("请输入你要打开的文件的完整路径及名称")
file= open(file_name, "r") # 这里的file时文件句柄for line infile:
# 处理每一行数据
file.close()
这种方式和方法三中的区别是分行读入,逐行处理,不会一次性把文件所有内容都读入到内存中,对一些大文件的处理是很有效的。
2 文件写入文本操作
文件写入有两种写入函数和一种辅助支持。
write():向文件中写入一个字符或者字节流
writelines():将一个元素全为字符串的列表写入到文件中 需要注意的是,writelines写入列表元素的时候会把列表元素的内容拼接到一起写入,不会有换行和空格 。
seek(): 辅助写入函数offset偏移量参数代表含义如下
0 - 文件开头
1 - 当前位置
2 - 文件结尾
2.1 方法一
file_name = input("output.txt", "w+")
text= "hello world!"file_name.write(text)
file.close()
2.2 方法二
file_name = input("output.txt", "w+")
list= ["中午","早上","晚上"]
file_name.writelines(list)for line infile:
# 读取写入的数据,这时候发现是没有任何内容的
file.close()
我们增加一行代码就可以读取到写入的文件内容,利用seek()函数调整写操作指针的位置,可以实现写操作之后的正常读取。
file_name = input("output.txt", "w+")
list= ["中午","早上","晚上"]
file_name.readlines(list)
file_name.seek(0) # 调整写的指针到文件的开始位置for line infile:
# 读取写入的数据,这时候会读出一行写入的数据。
file.close()
④ python如何读取文件的内容
# _*_ coding: utf-8 _*_
import pandas as pd
# 获取文件的内容
def get_contends(path):
with open(path) as file_object:
contends = file_object.read()
return contends
# 将一行内容变成数组
def get_contends_arr(contends):
contends_arr_new = []
contends_arr = str(contends).split(']')
for i in range(len(contends_arr)):
if (contends_arr[i].__contains__('[')):
index = contends_arr[i].rfind('[')
temp_str = contends_arr[i][index + 1:]
if temp_str.__contains__('"'):
contends_arr_new.append(temp_str.replace('"', ''))
# print(index)
# print(contends_arr[i])
return contends_arr_new
if __name__ == '__main__':
path = 'event.txt'
contends = get_contends(path)
contends_arr = get_contends_arr(contends)
contents = []
for content in contends_arr:
contents.append(content.split(','))
df = pd.DataFrame(contents, columns=['shelf_code', 'robotid', 'event', 'time'])
(4)python实现文件读取扩展阅读:
python控制语句
1、if语句,当条件成立时运行语句块。经常与else, elif(相当于else if) 配合使用。
2、for语句,遍历列表、字符串、字典、集合等迭代器,依次处理迭代器中的每个元素。
3、while语句,当条件为真时,循环运行语句块。
4、try语句,与except,finally配合使用处理在程序运行中出现的异常情况。
5、class语句,用于定义类型。
6、def语句,用于定义函数和类型的方法。
⑤ Python按行读取文件的简单实现方法
Python按行读取文件的简单实现方法
下面小编就为大家带来一篇Python按行读取文件的简单实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。
1:readline()
file = open("sample.txt")
while 1:
line = file.readline()
if not line:
break
pass # do something
file.close()
一行一行得从文件读数据,显然比较慢;
不过很省内存;
测试读10M的sample.txt文件,每秒大约读32000行;
2:fileinput
import fileinput
for line in fileinput.input("sample.txt"):
pass
写法简单一些,不过测试以后发现每秒只能读13000行数据,效率比上一种方法慢了两倍多;
3:readlines()
file = open("sample.txt")
while 1:
lines = file.readlines(100000)
if not lines:
break
for line in lines:
pass # do something
file.close()
用同样的数据测试,它每秒可以读96900行数据!效率是第一种方法的3倍,第二种方法的7倍!
4:文件迭代器
每次只读取和显示一行,读取大文件时应该这样:
file = open("sample.txt")
for line in file:
pass # do something
file.close()
以上就是小编为大家带来的Python按行读取文件的简单实现方法全部内容了
⑥ Python作业:读取一个文件,打印文件第2行开始的所有的内容
摘要 Python 提供了如下 3 种函数,它们都可以帮我们实现读取文件中数据的操作:
⑦ python中读取csv文件
python中读取csv方法有3种:
第一种,普通方法读取(open函数打开,然后使用for循环读取内容);
第二种,使用用CSV标准库读取;
第三种,用pandas模块读取。
⑧ python对文件的读操作方法有哪些
摘要 1 文件读取全文本操作
⑨ python读取excel文件如何进行
python编程语言拥有着比较强大的excel读写能力,我们只需要安装xlrd,xlwt这两个库就可以了。那么python读取excel文件如何进行,今天就为大家分享下python读取excel文件的具体操作方法,快来了解下吧!
⑩ Python随机读取文件实现实例
Python随机读取文件实现实例
这篇文章主要介绍了Python随机读取文件的相关资料,需要的朋友可以参考下
Python随机读取文件
代码如下
importosimportrandom rootdir="d:facetrain"file_names=[]forparent, dirnames, filenamesinos.walk(rootdir): #三个参数:分别返回1.父目录 2.所有文件夹名字(不含路径) 3.所有文件名字 file_names=filenames # for filename in filenames: #输出文件信息 # print("parent is" + parent) # print("filename is:" + filename) # print("the full name of the file is:" + os.path.join(parent, filename))x=random.randint(0,len(file_names)-1)print(file_names[x])
注意
1.本代码在Python3.5上测试通过
2.rootdir参数意为你要遍历的那个文件夹的目录,请根据自己的实际需要自行修改