python3read
A. 如何使用python3读取配置文件
完整示例
下面是一个完整的示例程序,他将生成一个IpConfig.ini的配置文件,再读取文件中的数据,输出到屏幕上。
#-*-coding:utf-8-*-
importconfigparser
#读取配置文件
config=configparser.ConfigParser()
config.read("IpConfig.ini")
#写入宿舍配置文件
try:
config.add_section("School")
config.set("School","IP","10.15.40.123")
config.set("School","Mask","255.255.255.0")
config.set("School","Gateway","10.15.40.1")
config.set("School","DNS","211.82.96.1")
exceptconfigparser.DuplicateSectionError:
print("Section'School'alreadyexists")
#写入比赛配置文件
try:
config.add_section("Match")
config.set("Match","IP","172.17.29.120")
config.set("Match","Mask","255.255.255.0")
config.set("Match","Gateway","172.17.29.1")
config.set("Match","DNS","0.0.0.0")
exceptconfigparser.DuplicateSectionError:
print("Section'Match'alreadyexists")
#写入配置文件
config.write(open("IpConfig.ini","w"))
ip=config.get("School","IP")
mask=config.get("School","mask")
gateway=config.get("School","Gateway")
dns=config.get("School","DNS")
print((ip,mask+" "+gateway,dns))
B. python3.2 io.UnsupportedOperation: read
单从提示的错误看,错误源自
def select():
#先打印出来给用户
f = open(telfile,"wb") #这里用的‘只写’属性,改成'rb'只读属性
conlist = p.load(f)
更正后,应该就没有所提示的错误了
C. python3中使用使用read_csv( )读取csv文件,文件路径中含有中文,怎么处理
字符被转义了写的不对,将字符改成英文模式下的字符。
D. python3爬虫urllib.request.urlopen("网址").read() 本来是utf-8,为什么还要加上urlencode(“utf-8”)
你这行代码是不需要urlencode()的。
对于返回的request对象,其read()方法获得的其实是一个字节流对象,而非字符串对象,所以这时需要调用该字节流对象的decode()方法,按指定编码方式进行解码。
至于urlencode(),这是urllib中的一个函数,它的作用是将字符串进行url编码。这个编码其实就是个转义的过程,将那些因可能造成解释器误会或安全问题而不适合出现在请求中的符号进行转义,并且把超出url编码表的字符降维。
E. python3用read()函数读取文件两次,就变成空字符串了
python在读取文件的时候是根据光标位置来读取的。读一行以后光标位置到了下一行。再来个read又到了下一行。
想要重新从头开始读的话用f.seek(0)
将光标位置放到最前面。这样再f.read()就是第一行的内容
还有个方法是f.tell()
告诉你当前光标的位置。你可以把文件都读完了以后f.tell()一下看看光标位置
然后再f.seek(0)
再f.tell()一下看看光标位置
with open() as f跟你截图用的差不多,只不过这种方式不用f.close(),会自动关闭文件句柄。不过也可以手动关闭文件句柄
F. python中 read,readline,readlines的区别
不带参数的read是将文件所有内容读入到 一个字符串中
readlines是将文件的所有行读取到列表中,列表中每项代表一行
read带参数是读取指定的字节数,read(10)读取10字节
G. 请教下 python read(3)的时候,为什么不是每行显示三个字符
如图所示
释
情
备
这都是每一行的结尾 然而在这3个字后面都有看不见的字符 也就是回车换行符 这符号占2个字符 所以才有你第2张图的效果 你可以先替换回车换行符为空 然后再按3个字输出
H. Python3.6pandas read_csv()函数读取中文命名的文件失败Initializing from file failed
在python3使用read_csv的时候,如果传入的参数不是文件名而是文件的路径,就会报这个错。
原因应该是这个库的问题,解决方法是,先切换到这个目录,然后传文件名作为参数。
出错代码:
import pandas as pd
trainFile = "F:/Projects/Python/coursera/intro-to-data-science/kaggle/data/train.csv"
trainData = pd.read_csv(trainFile)
改进代码:
import pandas as pd
import os
trainFile = "F:/Projects/Python/coursera/intro-to-data-science/kaggle/data/train.csv"
pwd = os.getcwd()
os.chdir(os.path.dirname(trainFile))
trainData = pd.read_csv(os.path.basename(trainFile))
os.chdir(pwd)
I. python3 读取整个文件怎么实现
试试用read()
fileH = open('test')
fileH.read()
fileH.close()