自己的第一个网页

一、文件

文件是一个存储在辅助存储器上的数据序列,可以包含任何数据内容

文件都是按照2进制进行存储的,但在表现形式上有2种:文本文件和二进制文件。

1. 文本文件

  文本文件一般由单一特定编码的字符组成,如utf-8编码,内容容易统一展示和阅读,大部分文本文件都可以通过文本编辑软件和文字处理软件创建、修改和阅读,最常见的是txt格式的文本文件。

  文本文件采用文本方式打开时,文件通过编码形成字符串;采用二进制方式打开时,文件被解析成字节流。由于存在编码,字符串中的一个字符由两个字节表示。

2. 二进制文件

  二进制文件直接由比特0和比特1组成,没有统一字符编码。二进制文件其实也是常见的,如png格式的图片文件、avi格式的视频文件等等。

二、文件操作

内置函数读写文件

  • 如何.创建文本文件
  • 如何将数据附加到文件中
  • 如何读取文件
  • 如何逐行读取文件
  • Python中的文件模式

用pandas库读取文件

  • pandas读取文件
  • read_csv/read_table参数
  • 导入
  • 基本导入 read_csv
  • 数据库导入
  • 分隔符 sep
  • 没有列名 header
  • 自定义列名 name
  • 某列设为索引 index_col
  • 部分读取 nrows chunksize
  • 导出
  • 导出 to_csv
  • 导出 to_json (read_json)

 文件的使用

文件的使用分为3步:打开文件、读写文件、关闭文件。

1. 打开文件

变量名 = open (文件名, 打开模式)

打开模式

说明

r

只读模式 (默认),文件不存在则返回FileNotFoundError异常

w

覆盖写模式,文件不存在则创建,存在则覆盖写

x

创建写模式,文件不存在则创建,存在则返回FileExistsError异常

a

追加写模式,文件不存在则创建,存在则追加写

t

文本文件模式 (默认)

b

二进制文件模式

+

在原功能基础上增加读写功能

2. 读文件

读文件方法

说明

<file>.read(size=-1)

从文件中读入所有内容,若有参数,则读入前size长度的字符串或字节流

<file>.readline(size=-1)

从文件中读入一行内容,若有参数,则读入改行前size长度的字符串或字节流

<file>.readlines(hint=-1)

从文件中读入所有行,以每行为元素形成列表,若有参数,则读入hint行

3. 写文件

写文件方法

说明

<file>.write(s)

向文件中写入一个字符串或字节流

<file>.writelines(lines)

将一个全为字符串的列表写入文件

<file>.seek(offset)

改变当前文件操作指针的位置(offset值)
0:文件开头;1:当前位置;2:文件结尾

4. 关闭文件

变量名.close()

 操作实例

代码及效果如下:

 1 # -*- coding: utf-8 -*-
 2 """
 3 Spyder Editor
 4 
 5 This is a temporary script file.
 6 """
 7 import  pandas  as pd
 8 def  ExcelToCsv_1(StartName, SheetName, EndName):
 9     '''
10      函数功能: 将excel格式文件转换为csv格式文件,使用iat方法
11      StartName: excel表格的文件路径
12      SheetNmae: excel表格中的表格名称
13      EndName:   csv文件的保存路径
14      '''
15     grade = pd.read_excel(StartName, sheet_name=SheetName)
16     for i in range(len(grade.index)):
17         for j in range(1, len(grade.columns)):
18             if grade.iloc[i, j] == '优秀':
19                  grade.iat[i, j] = 90
20             elif grade.iloc[i, j] == '良好':
21                  grade.iat[i, j] = 80
22             elif grade.iloc[i, j] == '合格':
23                  grade.iat[i, j] = 60
24             else:
25                  grade.iat[i, j] = 0
26     grade.to_csv(EndName)
27 def ExcelToCsv_2(StartName, SheetName, EndName):
28     '''
29      函数功能: 将excel格式文件转换为csv格式文件,使用replace方法
30      StartName: excel表格的文件路径
31      SheetNmae: excel表格中的表格名称
32      EndName:   csv文件的保存路径
33      '''
34      grade = pd.read_excel(StartName, sheet_name=SheetName)
35      Grade = grade.replace("优秀", "90")
36      Grade = Grade.replace("良好", "80")
37      Grade = Grade.replace("不合格", "60")
38      Grade = Grade.replace("合格", "60")
39      Grade = Grade.fillna(value = 0)
40      Grade.to_csv(EndName)
41  
42 ExcelToCsv_2("D:\\Python成绩登记信计.xlsx", "Sheet1", "D:\\Python成绩登记信计1.csv")
43 #ExcelToCsv_1("file:///D:/Python成绩.xlsx", "Sheet1", "D:\\Python成绩1.csv")
44 f=pd.read_csv('D:\\Python成绩登记信计1.csv')
45 f.to_html('D:\\Python成绩登记信计1.html') 

 

posted @ 2019-05-03 16:41  呆。  阅读(267)  评论(0编辑  收藏  举报