python学习笔记

1.type类型

2.变量

2.1变量命名规则
·变量名可包含字母、数字、下划线
·可以以字母和下划线打头,数字不行
·不能包含空格
·不能和关键字同名
2.1变量
注释:#单行 ’‘’ ‘’‘多行或双引号

3.字符串

3.1三引号:多行内容带空格可用三引号
3.2字符串内容带引号;单引号、双引号可互相叠加
3.3字符串可用+拼接
3.4字符串元素索引
第一个元素:str[0] 最后一个元素:str[-1]
字符串切片
str[2:4] 获取字符串第3至第5个元素
str[2:] 第3至后
str[:2] 第1至第3
Len 获取字符串长度

4.函数

定义 def
被调函数
返回值 return
缺省值参数 def stu(name,score=60):

参数有缺省值,后面参数都必须有缺省值
指定参数名调用可颠倒顺序,也可混合使用
一旦指定参数,后面都必须指定

局部变量和全局变量。局部在函数内,全局在函数外
函数内部,局部变量优先使用;如果函数内部重新赋值全局变量,应写作:global 全局变量

4.1常用内置函数
int 字符串、小数->整数
float 字符串->浮点数(小数)
str 字符串
Len 获取数据对象长度。如字符串、列表、元组、字典
Type 获取数据对象类型
print 打印
input 输入

5 列表 list

5.1定义:整数、小数、字符串、函数、变量,表达式(自动计算结果)等等 都可以。 也可以存储另一个列表对象。
ist=[1,2,3,”hello”,[7,8,9]]
列表可seqoence操作,即有序列性。
可以进行元素索引和切片操作
list[0] list[-1][0] 即为[7,8,9]中的7

切片:
list[0:3] == [1,2,3]
list[:3] == [1,2,3]
list[-1][:3] == [7,8,9]

5.2 改变列表内容
列表中内容被重新赋值后内容会变化

切片赋值 赋值的元素可比原列表多
a=[0,1,2,3,4]
a[1:4]=[a,b,c,d]
结果为:a=[0,a,b,c,d]

合并列表。 a+=[]

6元组 tuple

元组 也具有sequence 和列表相似,可存放任何类型数据对象,但元组内容不可改变

定义:namelist=(),也可去掉括号
a=(1,) 如果只有一个元素,则元素后加,

TypeError: 'tuple' object does not support item assignment 意思是说元组的内容是不可以改变的。 但是元组中列表内容可更改

判断元素在list or tuple中

in
not in

a in var。存在返回True,否则返回False

多变量同时赋值

a,b = [1,2]
变量和元素个数必须相等

函数可返回列表和元组

7.判断语句

布尔对象。 True False
布尔表达式
运算结果是布尔对象的表达式,就是 布尔表达式。
1 == 1

!= 不等 > >= < <= 表达式可连写

条件组合

且 and 或 or
非 not

if len(phone)>11:

If else
Elif elif not

8.对象的方法(method)

不同类对象有不同方法

8.1字符串的方法

-Count 包含指定的字符串数量

-Find 查找参数子字符串,返回其首次出现的位置索引

如果没有,返回-1

A.find(“x”,1) 返回a中从索引1往后查找的第一个x的索引

-split 以参数字符串分割字符串,返回列表 无分隔符
—splitness. 字符串按换行切割

-join 以分隔符连接列表中的元素,为新字符串
“|”.join[ a,b,c]

-strip 删除字符串前后空格
—lstrip 删除字符串前空格
—rstrip 删除字符串后空格

-replace 替换字符串 a.replace(x,y) x替换为y

-startswith 检查字符串以指定参数开头
-endswith 检查字符串以指定参数结尾
是返回 True 否返回False

-isdigit 判断字符串是否全是数字

-字符串倒序 [::-1] ::表示字符串从右往左,以步长为1切片, [::2] 表示字符串从左往右,以步长2切片

8.2列表的方法

·append 在列表后添加一个元素 返回None,不是新列表对象

·insert 在列表指定位置添加元素,a.insert(1,”新”)
返回None

·pop 取出一个元素的索引并删除元素, 返回取出元素

·remove 找到第一个与参数相等的元素并删除,返回None

·reverse 将元素列表倒过来。返回None

·Index 返回参数对象的索引

·sort 对列表进行排序,改变列表内容,返回None

numbers = [7,3,8,2,9]
numbers.sort()
print(f'after sort: {numbers}')

9.格式化字符串

转义字符
\n 换行
\t
用 \x41 表示 ASCII编码为0x41的字符(也就是字符 A )
用 \u767d 表示 unicode编码为0x768d的字符(也就是汉字 白)
\字符串中表示反斜杠,比如文件路径
或者 path = r'c:\windows\temp'

10.循环

10.1while

while 条件:
代码
条件成立时,循环代码

10.2 for循环
for s in list:
print()

For in range(100):
range(100) 表示从0开始到100取数
range(50,101) 从50-100
range(50,101,2) 步长为2, 50、52…

10.3 Break 终止循环 跳出循环,不执行之后的代码

Break和return区别 return用在函数中,break在循环中 break只跳出循环,return则在函数中返回,返回到调用处

10.4 Continue 结束当前本次循环,后续循环继续执行

10.5 列表推倒式

list1 = [1,2,3,4,5,6]
list2 = [num**2 for num in list1]

10.6 循环嵌套
循环嵌套

Enumerate 枚举

获取元素和元素索引

11.字符编码

ASCII 英文字符集 128

GBK2312 GBK GB18030

‘’.encode(‘utf8’)

解码 字节串 的decode 方法

使用 b" 语句将字符串编码为 bytes 字符串格式
b'This is a string'

	在将字符串存入磁盘和从磁盘读取字符串的过程中,Python自动地帮你完成了编码和解码的工作。

	使用bytes类型,实质上是告诉Python,不需要它帮你自动地完成编码和解码的工作,而是用户自己手动进行,并指定编码格式。

12.文本读写

写入文件-编码(encode) 字符串->字节串
读取文件-解码(decode)文本信息是字节串->字符串

open函数

参数:
·file 指定文件打开路径
相对路径,当前目录;绝对路径:带盘符

·mode 指定文件打开模式
-r 只读文本模式 编码为str
-w 只写 新文件写入或清空写入 编码为bytes
-a 追加 文末添加
-encoding 指定 字符编解码方式

Write 写入

Read 读取 read(3) 读取第三个字符

Readlines 返回列表

Print 会在打印的字符串后自动添加换行

error:
遇到有些编码不规范的文件,你可能会遇到 UnicodeDecodeError ,因为在文本文件中可能夹杂了一些非法编码的字符。

遇到这种情况, open() 函数还接收一个 errors 参数,默认是 errors=None 表示如果遇到编码错误后如何处理。最简单的方式是直接忽略

f = open('test/utf8.txt', 'r', encoding='utf-8', errors='ignore')

13.字典

方法

删除
pop
del

遍历字典

items 加for循环

keys values 方法

clear 清空字典

字典合并update
members.update(another)

判断个数 len

posted @ 2021-06-30 00:30  一只想飞翔的鱼  阅读(74)  评论(0)    收藏  举报