打开文件

使用Python内置的方法 open()可以打开文件

file object = open(file_name [, access_mode][, buffering])
  • file_name:file_name变量是一个包含了你要访问的文件名称的字符串值
  • access_mode:access_mode决定了打开文件的模式:只读,写入,追加等。所有可取值见如下的完全列表。这个参数是非强制的,默认文件访问模式为只读(r)
  • buffering:如果buffering的值被设为0,就不会有寄存。如果buffering的值取1,访问文件时会寄存行。如果将buffering的值设为大于1的整数,表明了这就是的寄存区的缓冲大小。如果取负值,寄存区的缓冲大小则为系统默认

常用文件打开模式

模式 描述
r 以只读方式打开文件
rb 以二进制格式打开一个文件用于只读
w 打开一个文件只用于写入
a 打开一个文件用于追加,新的内容将会被写入到已有内容之后,如果该文件不存在,创建新文件进行写入

文件读取

line=f.read()
line1=f.readline()
line2=f.readlines()
  • read() 每次读取整个文件,它通常用于将文件内容放到一个字符串变量中
  • readline() 每次只读取一行
  • readlines()一次性读取文件所有行 自动将文件内容分析成一个行的列表,该列表可以由 Python 的 for ... in ... 结构进行处理

关闭文件

f.close()

一、txt文件

读取txt文件

案例:读取stu_info.txt文件内容,并将所有文件中学生名称显示出来

f=open("stu_info.txt",'r')
# l=f.read()
# print(l)
# line1=f.readline()
# print(line1)
lines=f.readlines()
print(lines) for line in lines:
# print(line)
name=line.split(',')[0]
age=line.split(',')[1]
city=line.split(',')[2]
print(name,age,city)

运行结果:

['Jack,25,Beijing\n', 'Bob,22,Shanghai\n', 'Harry,24,Shenzhen\n', 'Nancy,23,Chengdu']
Jack 25 Beijing

Bob 22 Shanghai

Harry 24 Shenzhen

Nancy 23 Chengdu

split()方法语法

str.split(str="", num=string.count(str))

参数:

  • str -- 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等
  • num -- 分割次数

二、csv文件

csv即为逗号分隔值(Comma-Separated Values,CSV),有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)

csv文件读取

案例:读取Stu_info.csv文件里所有学生信息

import csv   # 导入csv包
# 读取本地CSV文件
csv_file=csv.reader(open("Stu_info.csv",'r'))
# 循环输出每一行信息
for stu in csv_file:
print(stu)

csv文件写入

stu=['hugh',25,'Beijing']
stu1=['rain',28,'Wuhan']
# 打开文件
out=open('Stu_info.csv','a',newline='') # 'a'是追加,'w'是覆盖
# 设定写入方式
csv_write=csv.writer(out,dialect='excel')
# 写入具体内容
csv_write.writerow(stu)
csv_write.writerow(stu1)
print("Write file over!")

Python文件处理(txt、csv文件读取)的更多相关文章

  1. CSV文件数据如何读取、导入、导出到新的CSV文件中以及CSV文件的创建

    CSV文件数据如何读取.导入.导出到新的CSV文件中以及CSV文件的创建 一.csv文件的创建 (1)新建一个文本文档: 打开新建文本文档,进行编辑. 注意:关键字与关键字之间用英文半角逗号隔开.第一 ...

  2. python json格式和csv文件转换

    python json格式和csv文件转换 上代码 import csv import json ''' json格式示例 [{ "firstName":"Bill&qu ...

  3. 深入理解pandas读取excel,txt,csv文件等命令

    pandas读取文件官方提供的文档 在使用pandas读取文件之前,必备的内容,必然属于官方文档,官方文档查阅地址 http://pandas.pydata.org/pandas-docs/versi ...

  4. Linux-各种姿势(less\vi等)打开各种类型的文件(txt/csv/xlsx等)出现不能打开(全乱码、部分乱码、二进制文件等)的问题

    (一)linux各种中文乱码解决办法整理 远程登录服务器用vim在终端下编辑查看文件经常会遇见各种中文乱码问题. 做如下设置可基本解决vim中文乱码问题,首先查看系统对中文的支持locale -a | ...

  5. python笔记5-python2写csv文件中文乱码问题

    前言 python2最大的坑在于中文编码问题,遇到中文报错首先加u,再各种encode.decode. 当list.tuple.dict里面有中文时,打印出来的是Unicode编码,这个是无解的. 对 ...

  6. Python数据分析基础——读写CSV文件

    1.基础python代码: #!/usr/bin/env python3 # 可以使脚本在不同的操作系统之间具有可移植性 import sys # 导入python的内置sys模块,使得在命令行中向脚 ...

  7. python 下 excel,csv 文件的读写

    python 可以用利用xlrd 库读取数据excel数据,可以用xlwt写入excel数据,用csv 操作csv文件 xlrd xlwt  python 模块 官方链接  https://pypi. ...

  8. python学习之读写csv文件(使用pandas)

    简介 逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本).纯文本意味着该文件是一个字符序 ...

  9. python合并多个csv文件并去重

    #coding=utf-8 import os import pandas as pd import glob def hebing(): csv_list = glob.glob('*.csv') ...

  10. Python之Pandas操作csv文件dataframe

    # -*- coding: utf-8 -*- # author:baoshan import pandas as pd def main(): aqi_data = pd.read_csv('chi ...

随机推荐

  1. 数论+DP HDOJ 4345 Permutation

    题目传送门 题意:一个置换群,经过最少k次置换后还原.问给一个N个元素,在所有的置换群里,有多少个不同的k. 分析:这道题可以转化成:N = Σ ai ,求LCM ( ai )有多少个不同的值.比如N ...

  2. GC_CONCURRENT freed 循环不停打印日志

    打印类似如下语句: 03-07 19:21:49.562: D/dalvikvm(1677): GC_CONCURRENT freed 2859K, 20% free 12020K/15011K, p ...

  3. 关于min-height:100%的解决办法

    前几天碰到一个问题,在用bs和jq2.2.0开发时,min-height设为100%在firefox和ie下没有起作用,先用css改了一下,但是min-height虽然是奏效了,但同时出现了其他css ...

  4. js拿到焦点所在的标签对象

    通过 document.activeElement 此时是js对象,如果要调用jQuery的API那么就转换成jquery对象 $(document.activeElement)

  5. css中display设置为table、table-row、table-cell后的作用及其注意点

    html: <div class="table"> <div class="row"> <div class="cell ...

  6. 翻译:高级t - sql第1级的阶梯:使用交叉连接来引入高级t - sql

    高级t - sql第1级的阶梯:使用交叉连接来引入高级t - sql 源于:格雷戈里·拉森,2016/02/19(首次出版:2014/12/17 翻译:刘琼滨 谢雪妮 徐雅莉 赖慧芳 链接:http: ...

  7. jQuery 小实例 关于按字母排序

    jQuery的强大再次不再赘述 一般情况下操作表格式数据的一种最常见的任务就是排序,在一个大型的表格中,能够对要寻找的信息进行重新排列是非常重要的,一般情况用来完成排序的方式有两种 :一种是服务器端排 ...

  8. Linux——网络编程线程池机制

    #include <stdlib.h>#include <pthread.h>#include <unistd.h>#include <assert.h> ...

  9. emil 的使用

    摘抄自别人 RFC882文档规定了如何编写一封简单的邮件(纯文本邮件),一封简单的邮件包含邮件头和邮件体两个部分,邮件头和邮件体之间使用空行分隔. 邮件头包含的内容有: from字段  --用于指明发 ...

  10. hibernate inverse属性

    修改街道对应的区道信息: 修改后会发现程序执行了两次修改操作: 原因: 区道与街道是一对多的关系: 由于Hibernate是双向维护外键,所以当修改区道中的街道时,会修改一次外键:在修改街道中的区道时 ...