我的编程空间,编程开发者的网络收藏夹
学习永远不晚

python 基础 day3

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

python 基础 day3

python 操作文件的常用方式有如下

读文件:r 模式
实例演示1:
f1 = open(file='D:\Python3.5-learn\模块2\character3_文件操作\staff_table.txt',mode='r',encoding='utf-8') # 以 r 的 模式,打开指定路径的文件 ,按照utf-8 的方式去读取

data = f.read() # 读取文件,表示读取所有内容

f.close() # 关闭文件

实例演示2:
f2 = open(file='D:\Python3.5-learn\模块2\character3_文件操作\staff_table.txt',mode='rb',encoding='utf-8') # 以 rb 二进制 的 模式,打开指定路径的文件 ,按照utf-8 的方式去读取

data = f.read() # 读取文件,表示读取所有内容

f2.close() # 关闭文件

示例2和示例1的区别在哪?

答:在于示例2打开文件时并未指定encoding,这是为何?是因为直接以rb模式打开了文件 ,rb是指二进制模式,数据读到内存里直接是bytes格式,如果想内容,还需要手动decode,因此在文件打开阶段,不需要指定编码

循环遍历文件:

f = open(file='D:\Python3.5-learn\模块2\character3_文件操作\staff_table.txt',mode='r',encoding='utf-8') #

for line in f:

 print(line)

f.close()

写文件:w 模式
实例演示1:
f1 = open(file='D:\Python3.5-learn\模块2\character3_文件操作\staff_table.txt',mode='w',encoding='utf-8') # 以 w 的 模式,打开指定路径的文件 ,按照utf-8 的方式去写

data = f.write(“.....”) # 写入指定的文件

f.close() # 关闭文件

实例演示2:
f2 = open(file='D:\Python3.5-learn\模块2\character3_文件操作\staff_table.txt',mode='rb',encoding='utf-8') # 以 wb 二进制 的 模式,打开指定路径的文件 ,按照utf-8 的方式去读取

data = f.write(“.....”) # 写入指定的文件

f2.close() # 关闭文件

提示:文件以w 或者 wb 的方式去操作的时候,会清空原有的文件,

wb,写入时需要直接传入以某种编码的0100101,即:字节类型
w 和 encoding,写入时需要传入unicode字符串,内部会根据encoding制定的编码将unicode字符串转换为该编码的 010101010

追加文件:a模式
f1 = open(file='D:\Python3.5-learn\模块2\character3_文件操作\staff_table.txt',mode='a',encoding='utf-8') # 以 w 的 模式,打开指定路径的文件 ,按照utf-8 的方式去写

data = f.write(“\n11,Kevin Chen,22,13151054603,Sales,2013-04-01”) # 写入指定的文件

f1.close() # 关闭文件

文件操作时,以 “a”或“ab” 模式打开,则只能追加,即:在原来内容的尾部追加内容

写入到硬盘上时,必须是某种编码的0101010,打开时需要注意:

ab,写入时需要直接传入以某种编码的0100101,即:字节类型
a 和 encoding,写入时需要传入unicode字符串,内部会根据encoding制定的编码将unicode字符串转换为该编码的 010101010

读写模式:r+
f1 = open("beiying2.txt", "r+",encoding="utf-8") # 以读写的方式打开文件
data = f1.read() # 读取文件
print(data)
f1.write("\n first line") # 在文件的末尾追加文件
f1.close() # 关闭文件

写读模式:w+
f1 = open("beiying.txt", "w+", encoding="utf-8")
data = f1.read()
print(data)
f1.write("line 1")
f1.write("\nline 2")
f1.write("\nline 3")
f1.write("\nline 4")
f1.close()

w+会先把文件清空,再写新内容,相比w模式,只是支持了一个读功能,且还只能读已经写入的新内容

文件操作的其他方式:
def flush(self, *args, **kwargs): # real signature unknown
把文件从内存buffer里强制刷新到硬盘

def seek(self, *args, *kwargs): # real signature unknown
把操作文件的光标移到指定位置
注意seek的长度是按字节算的, 字符编码存每个字符所占的字节长度不一样。
如“路飞学城” 用gbk存是2个字节一个字,用utf-8就是3个字节,因此以gbk打开时,seek(4) 就把光标切换到了“飞”和“学”两个字中间。
但如果是utf8,seek(4)会导致,拿到了飞这个字的一部分字节,打印的话会报错,因为处理剩下的文本时发现用utf8处理不了了,因为编码对不上了。少了一个字节

def tell(self, *args, **kwargs): # real signature unknown
返回当前文件操作光标位置

def truncate(self, *args, *kwargs): # real signature unknown
按指定长度截断文件
指定长度的话,就从文件开头开始截断指定长度,不指定长度的话,就从当前位置到文件尾部的内容全去掉。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

python 基础 day3

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

python 基础 day3

python 操作文件的常用方式有如下读文件:r 模式 实例演示1:f1 = open(file='D:\Python3.5-learn\模块2\character3_文件操作\staff_table.txt',mode='r',encod
2023-01-31

Day3 python基础

集合是一个无序的,不重复的数据组合,它的主要作用如下:去重,把一个列表变成集合,就自动去重了关系测试,测试两组数据之前的交集、差集、并集等关系list_1 = [1, 4, 5, 7, 3, 6, 7, 9]list_1 = set(lis
2023-01-31

Python Day3

mode打开文件方式r读(默认)w写x创建并写a追加r+读写w+写读x+创建并写读a+追加读#w a r 三种纯净模式#如果是windows平台一般还要加上一个小r,意思是取消路径中/的转义功能(不用写//了)#默认t,指的是文本文件,文本
2023-01-31

Python编程Day3—基本运算符、数

一、基本运算符1、算数运算1 print(10/3)2 3 print(10//3)4 5 print(10%3)6 7 print(10**3)  2、比较运算  1 print(10==10) 2 3 print(10!=10) 4
2023-01-31

python 22- day3

1、知识点补充2、编码3、集合4、深浅copy5、文件操作file1= open("D:/myclass/课堂文件/day02/day02/02 字符串.py",encoding='utf-8',mode='r')print(file1.r
2023-01-31

Python基础-Python基础使用

上篇文章 Python基础-初识Python 我们已经知道了什么是Python,Python的用处、和Python的解释器、Python的安装,这篇文章,我们主要讲Python的使用入门本文防盗链:http://python789.blog
2023-01-31

Python基础——1基础

输出print(‘把子肉爱上热干面’,‘哈哈’)  # ‘,’输出为空格输人 name = input(‘提示的内容’)/浮点除法  %.6f//地板除法  整除%  取余python编码问题(采用Unicode编码)ord(‘A’) =
2023-01-30

python笔记day3

字典修改或者添加:dict['key'] = value程序二:file1.txt文件内容如下:alex|123|1carrick|123|1tony|123|1从文件file1.txt中读出内容,写成dic = {'carrick': [
2023-01-31

python 学习day3

set(无序不重复的序列)创建两种方式 例一:s1 = {1,2,3} 例二:s2 = set() ,s3 = set([1,2,3,4,5])功能 s2.add(123) #添加s2集合中123元素 s2.clear() #清除内容 s2
2023-01-31

Python基础篇-Python基础语法

为什么学习pythonhttp://www.apelearn.com/bbs/thread-7739-1-1.html Python的安装 getconf LONG_BIT     查看系统版本多少位 rpm -q python uname
2023-01-31

Python基础--Python3基础语

Python3 基础语法编码默认情况下,Python3源码文件以UTF-8编码,所有字符串都是Unicode字符串。当然也可以为源码文件指定不同的编码,例如:# -*- coding: cp-1252 -*-标识符1.第一个字符必须是字母表
2023-01-31

day3 python函数

自定义函数:def myfun(args1,args2):函数体return valuedef get_info(): userinfo = {} with open("info.txt","r",encoding="utf-8
2023-01-31

python学习(day3)

1、集合的使用:#1、集合的操作:list_1 = [1,4,5,7,3,6,7,9]list_1 = set(list_1)#创建集合list_2 = set([2,6,0,22,66,8,4])print(list_1,type(lis
2023-01-31

Python-day3作业-haprox

#!/usr/bin/env pythonimport os,sys,time,re,prettytable,jsonfrom collections import defaultdict,OrderedDictconf='haproxy.
2023-01-31

Python基础

主要是复习时总结自己不太熟悉的知识点了(面向Internet的总结)。函数的参数位置参数——按位置依次对应关键字参数——按“键值对”对应func('hello', val = 1)调用时:若有位置参数,位置参数必须在关键字参数的前面,但关键
2023-01-30

python 基础

#列表是python最常用的数据类型,它可以作为一个方括号内的逗号分隔值出现列表的数据类型不需要相同的类型创建一个列表,只有在方括号([])以逗号(,)分割开即可,不需要相同的数据类型列表表示方式list1=['gao_wang','li_
2023-01-31

Python基础语法(Python基础知识点)

Python与Perl,C和Java语言等有许多相似之处。不过,也有语言之间有一些明确的区别。本章的目的是让你迅速学习Python的语法。 第一个Python程序: 交互模式编程: 调用解释器不经过脚本文件作为参数,显示以下提示:$ pyt
2022-06-04

Python学习记录day3

Python学习记录 day3今天是银角大王武sir讲课。先回顾了上节课所学,然后讲到了面向对象思想。setset是一个无序且不重复,可嵌套的元素集合class set(object):    """    set() -> new emp
2023-01-31

Python练习题(day3)

一、函数练习题:1、写函数,用户传入修改的文件名,与要修改的内容,执行函数,完成批了修改操作2、写函数,计算传入字符串中【数字】、【字母】、【空格] 以及 【其他】的个数3、写函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5。4
2023-01-31

python爬虫笔记-day3

正则使用的注意点re.findall("a(.*?)b","str"),能够返回括号中的内容,括号前后的内容起到定位和过滤的效果原始字符串r,待匹配字符串中有反斜杠的时候,使用r能够忽视反斜杠带来的转义的效果点号默认情况匹配不到\n\s能够
2023-01-31

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录