《用Python玩转数据》-03 数据获取与表示

1 本地数据获取

1.1 文件处理步骤

  • 打开文件 file_obj = open(filename,mode='r',buffering=-1)
  • 读文件/写文件 file_obj.read() / file_obj.write()
  • 关闭文件 (python)file_obj.close()

1.2 文件的打开.

file_obj = open(filename,mode='r',buffering=-1)

  • filename 是强制参数,后面两个是可选参数。
  • mode的默认值为'r'
  • buffering 默认值为-1 (0表示不缓冲,1或大于1的值表示缓冲一行或指定缓冲区大小),为了加快读写速度,尽量使用缓冲
python文件模式

1.3 文件相关的函数

  • open()函数返回的一个文件file对象

  • 文件对象可迭代

  • 文件对象的关闭和读写

    f.read()、f.write()、f.readline()、f.readlines()、f.writelines()
    f.close()、 f.seek()

  • 写文件-f.write() / 读文件-f.read()

  • 其他读写函数 f.readlines() / f.readline() / f.writelines()

fileobj = open(r'H:\pythonTest1.txt')
cNames = fileobj.readlines()
print cNames
file_obj.close()

['line1\n', 'line2\n', 'line3'] 输出了文件中的所有行,包含换行符,如果要去除换行符,需要strip函数,python中读取和写入都不去除和加入换行符,要自己处理。
python中没有writeline方法,因为这个与write方法类似,都是写入单行

  • 其他文件相关函数
    file_obj.seek(offset,whence=0)
    在文件中移动文件指针,从whence(0表示文件头部,1表示当前位置,2表示文件尾部)偏移offset个字节
    whence参数可选,默认值为0

1.4 文件读写例子

打开一个文件,将每行的字符串加上序号1,2,3,然后写到另一个文件中。

f1 = open(r"H:\\companies1.txt")
cNames = f1.readlines()   #读取文件中所有的行
for i in range(0,len(cNames)):
    cNames[i] = str(i+1) + ' ' +cNames[i]  #追加序号到每个字符串中
f1.close
f2 = open(r"H:\\companies3.txt",'w')
f2.writelines(cNames)
f2.close()

你可能感兴趣的:(《用Python玩转数据》-03 数据获取与表示)