python笔记进阶--模块、文件及IO操作(1)

文章介绍了Python编程中的模块导入与使用,如import语句、包的组织结构,以及文件操作(如文件路径、读写、CSV文件)、正则表达式的概念和应用,还包括了标准库中常用模块的功能如os、sys、time、datetime等。
摘要由CSDN通过智能技术生成

2.3正则表达式处理

2.4turtle

二.文件及IO操作

1.文件

1.1绝对路径与相对路径

1.2读取文件

1.2.1打开文件模式

1.2.2写入文件

1.2.3with读取文件

2.CSV文件的读取


一.模块

1.模块的导入和使用

模块将函数存储在称之为模块的独立文件中,再将模块导入到主程序中, import语句:允许在当前运行的程序文件中使用模块中的代码。
包是Python模块的一种组织形式,将多个模块组合在一起,形成一个大的Python工具库。包通常是一个拥有__init__.py文件的目录,它定义了包的属性和方法。
1.1导入整个模块
模块 的使用pizza.pydef make_pizza(size,*toppings):    print(f"The {size} topping:“)     for topping in toppings:        print(f”—{topping}")
making_pizza.pyimport pizza  #导入模块pizza.py pizza.make_pizza(16,‘sugar’)pizza.make_pizza(43,‘green’,‘sugar’)The 16 topping: —sugar The 43 topping: —green —sugar
from********pizza ****import********make_****pizza  #导入模块pizza.py中的make_pizza函数 make_pizza(16,‘sugar’)make_pizza(43,‘green’,‘sugar’)
包 的使用my_package包中 pizza.pyfrom********my_package import********pizza pizza.make_pizza(16,‘sugar’)pizza.make_pizza(43,‘green’,‘sugar’)
1.2导入函数

****①导入所有函数:****from pizza import *

②导入特定函数

导入model_name.py中的function_name函数:from model_name import function_name
导入model_name.py中的funtion_0, funtion_1, funtion_2函数:

from model_name import funtion_0, funtion_1, funtion_2

making_pizza.py 导入pizza.py中的make_pizza的函数from pizza import make_pizza
1.3使用as给模块指定别名

例如,给模块pizza指定别名p :import pizza as p

2.常见标准库

模块用途
osos 模块提供了许多与操作系统交互的函数,例如创建、移动和删除文件和目录,以及访问环境变量等。
syssys 模块提供了与 Python 解释器和系统相关的功能,例如解释器的版本和路径,以及与 stdin、stdout 和 stderr 相关的信息。
timetime 模块提供了处理时间的函数,例如获取当前时间、格式化日期和时间、计时等。
datetimedatetime 模块提供了更高级的日期和时间处理函数,例如处理时区、计算时间差、计算日期差等。
randomrandom 模块提供了生成随机数的函数,例如生成随机整数、浮点数、序列等。
mathmath 模块提供了数学函数,例如三角函数、对数函数、指数函数、常数等。
rere 模块提供了正则表达式处理函数,可以用于文本搜索、替换、分割等。
jsonjson 模块提供了 JSON 编码和解码函数,可以将 Python 对象转换为 JSON 格式,并从 JSON 格式中解析出 Python 对象。
urlliburllib 模块提供了访问网页和处理 URL 的功能,包括下载文件、发送 POST 请求、处理 cookies 等。
2.1 import random**:**
函数名函数说明
randrange(start,stop,step)start 指定范围的起始值 包含本身,默认是0;stop 指定范围的结束值不包含本身; step 步长,默认步长是1。该函数返回一个整数
randint(start,end)返回[start end]之间的一个随机整数,start必须小于end
random()返回一个[0.0,1.0)之间的随机小数
choice(seq)返回一个序列(列表、元组,字符串)中返回一个随机元素
shuffle(seq)将序列元素随机排列(打乱顺序)
2.2 import math**:**
函数名函数的说明示例
math.ceil()向上取整math.ceil(18.1)   #19
math.floor()向下取整math.floor(18.1)  #18
math.sqrt求平方根math.sqrt(100)
2.3正则表达式处理

可以用于文本搜索、替换、分割等

模式描述
\w匹配字母数字及下划线
\W匹配非字母数字下划线
\s匹配任意空白字符,等价于\rinf].
\S匹配任意非空字符
\d匹配任意数字,等价于[0-9]
\D匹配任意非数字
\A匹配字符串开始
\Z匹配字符串结束,如果是存在换行,只匹配到换行前的结束字符串
\z匹配字符串结束
\G匹配最后匹配完成的位置
\N匹配一个换行符
\t匹配一个制表符
A匹配字符串的开头匹配字符串的末尾。
.匹配任意字符,除换行符,当re.DOTALL标记被指定时,则可匹配包括换行符的任意字符。
[…]用来表示一组字符,单独列出:[amk]匹配 “a’,'m"或"k”
[^…]不在[]中的字符:[^abc]匹配除a,b,c之外的字符。
*匹配0个或多个的表达式。
+匹配1个或多个的表达式。
?匹配0个或1个由前面的正则表达式定义的片段,非贪婪方式
{n}精确匹配n个前面表达式。
{n,m}匹配n到m次由前面的正则表达式定义的片段,贪婪方式
****ab****
()匹配括号内的表达式,也表示一个组
2.4turtle
方法说明
forward(d)/fd(d)向当前画笔方向移动d像素长度
backward(d)/back(d)/bk(d)向当前画笔相反方向移动d像素长度
goto(x,y)/setpos(x,y)/setposition(x,y)将画笔移动到坐标为x,y的位置
setx(x)设置海龟的横坐标为 x,纵坐标保持不变
sety(y)设置海龟的纵坐标为 y,横坐标保持不变
penup()/up()提起笔移动,不绘制图形,用于另起一个地方绘制
pendown()/down()放下笔,移动时绘制图形,缺省时也为绘制
right(degree)/rt(degree)顺时针移动degree°
left(degree)/lt(degree)逆时针移动degree°
setheading(angle)/seth(angle)设置海龟的朝向为 angle
circle(radius, extent=None, steps=None)绘制圆弧
dot(radius,colorstr)绘制一个指定直径和颜色的圆点
home()设置当前画笔位置为原点,朝向东

二.文件及IO操作

1.文件

文件****:****以计算机硬盘为载体存储在计算机上的信息集合,文件可以是文本文档、图片、程序等。

计算机文件基本上分为二种:二进制文件(没有统一的字符编码)

纯文本文件(有统一的编码,可以被看做存储在磁盘上的长字符串)

纯文本文件编码格式****:****ASCII、ISO-8859-1、GB2312、GBK、UTF-8、UTF-16 等。

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

img

img

img

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注:Python)

mg_convert/9f49b566129f47b8a67243c1008edf79.png)

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注:Python)

  • 28
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值