大数据Python基础之文件读写

1.Python处理的各种类型的数据,通过内置数据结构如列表、字典等在计算机内存中进行处理加工,最后必须要存入外部存储器中永久保存。
2.文件是一个存储在辅助存储器上的数据序列;
文件是常用的存储形式;
文件可以包含任何数据内容;
文件的类型分为文本文件和二进制文件,文本由单一特定编码的字符串构成,二进制没有统一编码,需要软件进行编码和解码。
3.文件的打开和关闭
使用file = open(file_name,mode)函数,打开文件,返回一个stream对象file
如果文件的存储位置与程序的存储位置相同,只写文件名就可以
如果不同,需要在函数中指明文件路径,因此这里就会有几个注意的地方
首先,不能直接复制系统显示的文件路径,如‘C:\text.txt’,因为python用反斜杠’\’代表转义字符
有两种修改方法,一是将’\’的方向反向为’/’或者是’\’,二是在路径前加个r,意思是按原始字符处理
其次,如果路径中含有中文字符该怎么办?
通过unicode(inpath, ‘utf-8’)函数,将路径的编码变为utf-8编码

#!/usr/bin/python
# -*- coding: UTF-8 -*-
file1 = open("text.txt", 'r')
# inpath = "C:/Users/尔康/Desktop/1.txt"
# inpath = "C:\\Users\\尔康\\Desktop\\1.txt"
inpath = r"C:\Users\尔康\Desktop\1.txt"
uinpath = unicode(inpath, 'utf-8')
print uinpath
file2 = open(uinpath, 'r')
data1 = file1.read().decode('gbk').encode('utf-8')
data2 = file2.read().decode('gbk').encode('utf-8')
print data1
print data2
# 关闭文件
file1.close()

输出:
C:\Users\尔康\Desktop\1.txt
你好

你好呀
注释:文本中含有中文
encode()是对字符串进行转码的方法,decode()是对字符串进行解码的方法
Python2中默认的编码方式一般是GBK,因此读取时应该先将其GBK解码,解码为unicode,然后再UTF-8编码
4.写入文件

ls = ["王", "二", "呀"]
# 保护文件,在没有关闭文件的时候,自动关闭
with open("text.txt", "w+") as fo:
    # 写入,但是没有换行符
    # fo.writelines(ls)
    fo.writelines(line + "\n" for line in ls) # 换行

写入文件的方法:
< file>.write(s) 向文件写入一个字符串或字节流
< file>.writelines(lines) 将一个元素为字符串的列表写入文件
< file>.seek(offset) 改变当前文件操作指针的位置,offset的值:0 文件开头,1 当前位置,2 文件结尾
5.模拟数据存入文件实例

from faker import Faker
fake = Faker()
with open("test.txt", 'w') as fo:
    for i in range(10):
        fo.writelines([fake.name()+"\n", fake.full_address()+"\n"])
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值