打开文件

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

  1. 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 打开一个文件用于追加,新的内容将会被写入到已有内容之后,如果该文件不存在,创建新文件进行写入

文件读取

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

关闭文件

  1. f.close()

一、txt文件

读取txt文件

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

  1. f=open("stu_info.txt",'r')
  2. # l=f.read()
  3. # print(l)
  4. # line1=f.readline()
  5. # print(line1)
  6. lines=f.readlines()
  7. print(lines)
  8.  
  9. for line in lines:
  10. # print(line)
  11. name=line.split(',')[0]
  12. age=line.split(',')[1]
  13. city=line.split(',')[2]
  14. 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()方法语法

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

参数:

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

二、csv文件

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

csv文件读取

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

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

csv文件写入

  1. stu=['hugh',25,'Beijing']
  2. stu1=['rain',28,'Wuhan']
  3. # 打开文件
  4. out=open('Stu_info.csv','a',newline='') # 'a'是追加,'w'是覆盖
  5. # 设定写入方式
  6. csv_write=csv.writer(out,dialect='excel')
  7. # 写入具体内容
  8. csv_write.writerow(stu)
  9. csv_write.writerow(stu1)
  10. 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. Neighbor House LightOJ - 1047

    Neighbor House LightOJ - 1047 #include<cstdio> #include<cstring> #include<algorithm&g ...

  2. ACM_不知所措的统计员

    Problem Description: GDUFE-GAME完美结束,按照惯例,会有一篇报道,描述活动期间的盛况,因此相关人员找到负责统计的ASDF,但是ASDF只知道第i个人在S_i时进场,在E_ ...

  3. 用代码设置 RelativeLayout.LayoutParams

    1.注意 不能在RelativeLayout容器本身和他的子元素之间产生循环依赖,比如说,不能将RelativeLayout的高设置成为WRAP_CONTENT的时候将子元素的高设置成为 ALIGN_ ...

  4. 08 H5新增input元素

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  5. .net 发送邮件验证码

    using System;using System.Collections.Generic;using System.Linq;using System.Net;using System.Net.Ma ...

  6. Laravel5中防止XSS跨站攻击的方法

    本文实例讲述了Laravel5中防止XSS跨站攻击的方法.分享给大家供大家参考,具体如下: Laravel 5本身没有这个能力来防止xss跨站攻击了,但是这它可以使用Purifier 扩展包集成 HT ...

  7. 【Java】包装类型

    Java中的基本类型功能简单,不具备对象的特性,为了使基本类型具备对象的特性,所以出现了包装类,就可以像操作对象一样操作基本类型数据. 一.基本类型对应的包装类 基本类型                ...

  8. 一个简单的公式——求小于N且与N互质的数的和

    首先看一个简单的东西. 若$gcd(i,n)=1$,则有$gcd(n-i,n)=1$ 于是在小于$n$且与$n$互质的数中,$i$与$n-i$总是成对存在,且相加等于$n$. 考虑$i=n-i$的特殊 ...

  9. Objective-C 里面的类对象复用小结

    OC 提供了单继承 (Inheritance), Category, Extension, Protocol 这几种基本的类与对象层面的复用机制,作一小结. 在这几个机制中,继承提供了纵向的复用,可以 ...

  10. Asp.Net 设计模式 之 “特殊”的单例模式

    特殊的单例模式 要点在这里,提前预览: public SingleDemo() { name = "yy"; age = 20; //特殊的单例,this指代得失当前的Single ...