python笔记3

一、字符串

1、什么是字符串

字符串:被引号引起来的内容就是字符串,这里的引号可以是双引,单引,三引,用于表示文本信息或字符序列。

2、方法

a= "Hello",b= "Python"

+字符串连接a + b 输出结果: HelloPython
*重复输出字符串a*2 输出结果:HelloHello
[]通过索引获取字符串中字符a[1] 输出结果 e
[ : ]截取字符串中的一部分,遵循左闭右开原则,str[0,2] 是不包含第 3 个字符的。a[1:4] 输出结果 ell
in成员运算符 - 如果字符串中包含给定的字符返回 True'H' in a 输出结果 True
not in成员运算符 - 如果字符串中不包含给定的字符返回 True'M' not in a 输出结果 True

格式化:

age = 18
name = 'z3'
s = f'我叫{name}我今年{age}岁'
print(s)
s = '我叫' + name + '我今年' + str(age) + '岁'
print(s)
s = '我叫%s我今年%d岁' % (name, age)
print(s)
s = '我叫{}我今年{}岁'.format(name, age)
print(s)

拼写方法:

s = "HELLO"
print(s.capitalize())    #首字母大写
print(s.upper())         #全大写
print(s.lower())         #全小写
# title  每个单词首字母大写

判断:

isDigit() :判断字符串是否为整数
isalnum() :是否为非符号
isalpha() :判断是否是字母
isspace() :是否是空格
endswith() :判断字符串是否以XX结尾
startwith() : 判断字符串是否以XX开头

r  : 表示愿意输出

b : 表示字符串为字节数据(二进制数据)

encode() :将字符串转为字节数据

jiion() :将列表中的每一个元素通过指定的符号拼接成一个字符串

decod() :byte类型的decode方法可以将字节数据转为字符串

replace() :将指定字符串替换为其他字符串

strip() :去除字符串两端的空格

lstrip() :去除字符串左端的空格

center() : 中心对称

index() : 查找字符的序号,如果要查找不存在,则会抛异常。

find() :查找字符,如果不存在,则不报错

二、包和模块

1、含义

xxx.py是模块,保存要执行或者使用的代码 ,包在python中用来包裹模块的文件夹,在python中文件夹可以当作包使用,但是包并不是文件夹.

2、UUID

Uuid模块是一种特殊的技术,在文件上传、文件备份会经常使用;获取的是永不重负的字符串

uuid4().hex   会生成一个随机的 UUID,而.hex可以将其转换为十六进制字符串表示形式。

3、math

方法说明
ceil(天花板的意思) 向上取整
floor向下取整 注意:四舍五入(全局函数中的round)
e属性 自然常数
fabs求绝对值 等价于全局函数abs()
fmod求模
isnan判断是不是一个数字(是数字返回flase nan---not a number)
isfinite判断是不是有限
pi圆周率
pow()幂次方
sqrt根号 开平方根

4、random  产生随机数

方法说明
randint()产生随机整数[m,n]
random()产生一个0~1内的随机数[0,1) random.random() 可以乘10取整得到0·9的整数
uniform()产生基于正态分布的随机数(一般用不到)
randrange()产生一个范围的随机数(start,end,step)
choice()在序列(有序的,set是无序的)中随机筛选一个元素 ls=[1,2,3,4,5,6,7,8,9] random.choice(ls) s = {1,2,3,4,5,6,7} random.choice(s)-----报错

5、os  操作的是系统的文件系统

方法说明
chdir(path)修改当前工作目录 os.chdir("c:\")------os.chdir("..") ,一般不会更改
curdir获取当前目录 属性 注意返回的是相对路径 (绝对路径os.path.abspath(os.curdir))
chmod()修改权限 主要用在linux,help(os.chmod)(不做演示)
close关闭文件路径(不做演示)
cpu_count()返回cpu的核对应线程数(2核4线程)
getcwd()获取当前路径,返回的是绝对路径 ,相当于linux的pwd
getpid()获取当前进程的进程编号(任务管理器---详细信息)
getppid()获取当前进程的父进程的进程编号
kill()通过进程编号杀死进程(明白就行)
linesep对应系统下的换行符 \r\n \n
listdir()返回对应目录下的所有文件及文件夹(隐藏文件也可以调取出来),返回的是列表
makedirs()创建目录,支持创建多层目录(文件夹)os.makedirs("a/b/c/d")
mkdir创建目录,只支持一层创建,不能创建多层
open创建文件,等价于全局函数open (IO流详细讲)
pathsep获取环境变量的分隔符 windows ; linux :
sep路径的分割符 windows \ linux /
remove(文件名或者路径)删除文件 os.remove(b.text)
removedirs()移除目录,支持多级删除,递归删除
system执行终端命令

6、sys (python系统)

方法说明
api_version获取当前python的内部版本号
argv接收脚本参数的,注意第一个参数是脚本名称(javaz中mian函数中有个args) import sys print(sys.argv) ----- python xxx.py 返回的是["xxx.py"] python xxx.py 1 2 3 hahaha
sys.exit()退出系统

7、time

方法说明
asctime()获取当前时间
ctime()获取当前时间
localtime()获取本地时间 返回的是对象,方便自己完成格式化 ltiem = time.localtime() ltime.tm_year print("%s-%s-%s &s:%s:%s"%(ltime.tm_year,ltime.tm_mon,ltime.tm_mday,ltime.tm_hour,ltime.tm_min,ltime.tm_sec))
sleep(1)表示休眠时间,单位是秒
time()获取当前系统的时间戳,单位是秒(计算机从1970年0时0分0秒到现在秒数)
strftime()将时间对象格式化为字符串 f---format help(time.strftime) time.strftime("%Y-%m-%d")
strptime()将一个特定格式的时间字符串转换成时间对象 help(time.strptime) s="2019-08-03 07:35:35" type(s) time.strptime(s,"%Y-%m-%d %H:%M:%S")

三、文件IO

IO :一般就是内存与磁盘之间的输入输出

文件IO主要学习就是open,close ;第一个参数 要读写文件路径, 第二个参数 以何种方式进行读写。

文件路径分为:相对路径和绝对路径

相对路劲:从当前脚本出发逐级填写每一层文件路径

绝对路径:从根目录出发逐级填写每一层文件路径  

当读/写二进制数据的时候使用 r/wb 

write_file = open("1.txt", "wt")
write_file.write("123123123")
write_file.close()

encoding参数表示文件的编码类型,只有当以文本形式读写文件时encoding才起作用

a模式会在原文件的内容之后继续添加新内容    

边读边写" rt+" 、  复制文件  、 循环读写   

with关键字在其代码片段执行完毕后会自动释放文件/网络的占用

# 复制文件
read_file = open("头像1.png","rb")
b = read_file.read()
write_file = open("头像1的副本.png","wb")
write_file.write(b)
read_file.close()
write_file.close()


# 循环读写
def copy(src, dst):
    with open(src, "rb") as rf:
        with open(dst, "wb") as wf:
            while True:
                data = rf.read(1024 * 1024)
                if not data:
                    break
                wf.write(data)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值