list1.append('100') #将括号内的字符插入到列表末端,无论输入什么数据类型,都会转换成字符串。
list1.insert(0,'hello') #insert可以插入到列表的任意位置,所以要在括号内额外添加索引。
2.列表合并
for i in l1: #for和append循环添加
l2.append(i)
print(l2)
print(l1 + l2) #列表相加
l1.extend(l2) #将l2的字符按顺序添加到l1末端
3.删除数据
del l1[0] #按索引删除
l1.remove('hello') #指定目标删除
name = l1.pop(0,'jack') #取出目标再删除
4.统计个数
l1.count('jack') #统计目标出现的次数
5.排序
l1 = l1.sort() #将列表以升序重新排列 l1 = l1.sort(reversed = True) #将列表以降序重新排列6.翻转
l1.reverse() #翻转列表保存数据的顺序元组的内置方法 1.元组的特殊性
t1 = () #判定为元组
t2 = (10) #判定为整型
t3 = ('ab') #判定字符串
2.统计
len(t1) #统计该元组内储存数据的总数3.修改
t1 = (1, 2, 3, [4, 5, 6]) t1[-1].append(7) #(1)无法修改保存的数值、字符 #(2)可以修改保存在元组内的列表、字典、集合字典的内置方法 1.取值
info = {'name':'jack',
'age':18}
info.get('name')
info.get('xxx')
#括号内的键无法在字典中找到,则会输出None
2.统计
len(info) #统计字典内存储值的总数3.修改
info['name'] = 'tom' #需要通过键来寻找值,否则报错4.添加
info['sex'] = '男' #如果输入的键不存在则会新建一个键5.删除
del info['name'] #连着键保存的值一起删除
info.pop('name','jack') #精确到键中具体保存的其中一个值,先取出再进行删除
集合的内置方法
1.自动去重
l1 = [1,2,2,3,3,2,1,2,3,4,4,5,4,7] s1 = set(l1) l1 = list(s1) #集合自带去重复的功能,当生成或者转换为集合时,会自动清除内容相同的数值。2.两个集合的各种合集
pythons = {'jason','oscar','kevin','ricky','gangdan','biubiu'}
linuxs = {'kermit','tony','gangdan'}
# 1. 求出即报名python又报名linux课程的学员名字集合 (两者共同拥有)
print(pythons & linuxs)
# 2. 求出所有报名的学生名字集合 (两者全部)
print(pythons | linuxs)
# 3. 求出只报名python课程的学员名字 (独有)
print(pythons - linuxs)
# 4. 求出没有同时这两门课程的学员名字集合 (排除共同拥有)
print(pythons ^ linuxs)
ASCII码简介
计算机在设计之初就只能识别0和1,工程师为了让计算机能认识各种字符,就创造出为了识别字符而用来转换的ASCII码。
在ASCII码中,用一套数字来记录了对应的英文字母,即输入对应的数字来转换成英文字符。
A-Z 65-90
a-z 97-122
unicode码简介unicode码内储存了几乎所有语言的字符,按照一定顺序排列,不同字符储存的大小也不同。
英文字母 1bytes
其他字符 3bytes
在python2中,默认编码为ASCII码。
在python3中,默认编码为unicode码。
使用代码打开文件变量名 = open(文件路径,读写方式,字符编码) 变量名.close with open() as 变量名: #在字符串前加上r可以取消字符的特殊用法,因为在python中,特殊字符 / 和 有各自的特殊 #含义和用法,所以当作为路径输入时需要先取消它们的特殊用法,否则无法作为文件路径使用。文件的读写
| 只读(w) | 只允许读取内容,无法进行修改 |
| 只写(r) | 只允许修改内容,无法查看 |
| 只追加(a) | 只允许添加文本在文件末端,不进行其他操作 |
1.只能操作文本文件
2.必须指定encoding参数(即字符编码)
3.读写都是以字符串为单位
read() #一次性读取文本的所有内容,读取完毕后光标在末尾,继续读取会返回空值
readline() #读取一行文本
readlines() #一次读取一行,结果以列表形式返回
#逐行读取还有另一种方式,使用for循环可以节约内存空间,防止文件过大读取占据大量内存
for line in f:
print(line) #for循环一次只读一行
readable() #判断当前文件是否可读
writable() #判断当前文件是否可写
write() #输入内容至文本
writelines() #支持填写容器类型(内部可以存放多个数据值的数据类型)可以输入多个数据值
flush() #将内存中的文件数据立刻刷到硬盘(相当于主动按ctrl+s)
函数
函数的本质
函数可以理解为一个打包好的事件,里面有预先写好的代码,在需要时直接使用。
def function():
pass
function()
定义函数的代码部分默认不会执行,只有在被调用时才会执行
函数的格式def 函数名(参数1,参数2):
'''函数注释'''
函数体代码
return 返回值
| def | def用于定义函数,必须添加 |
| 函数名 | 函数名的使用和注意事项与变量名相同,简洁易懂,不能使用python已有的关键词 |
| 参数 | 用于把函数外的数据输入到函数内,与函数建立一个临时链接,参数也可以不写 |
| 注释 | 用于说明代码功能,避免遗忘 |
| 代码 | 组成函数核心的代码 |
| return返回值 | 将函数执行完的结果输出到函数外,函数执行完之后只会把return部分输出到函数外,在函数内的其他赋值等操作在函数执行完之后会重置。 |
def func():
print('function')
a = func()
print(a)
2.有return 但是后面没有输出目标,同样输出None
def func():
print('function')
return
a = func()
print(a)
3.有return 有一个输出对象,后面写什么就输出什么
def func():
num = 100
return 123
a = func()
print(a)
4.有return 有多个输出对象,每个对象之间以逗号隔开,最后默认以元组的形式输出
def func():
return 1,2,3,4
a = func()
print(a)
函数的参数
1.形式参数
形式参数是定义函数时括号内的参数,作用是从外界输入数据给函数。
def 函数名(参数1,参数2,......):
2.实际参数
实际参数是函数执行完之后return的参数,作用是作为函数运行结束后的输出值。
两种参数都只会在函数执行时临时绑定数据值,在函数结束之后就会解除绑定。
return 参数1,参数2,......
具体参数分类 1.位置参数
定义阶段括号内从左往右依次填写的称为位置参数
def func(a,b,c,d): #位置参数传入输出的数量和位置必须一致,多一个少一个都会报错
pass
return a,b,c,d
2.关键字参数
调用函数时括号内给变量写明了具体赋值的称为关键字参数
def func(a,b,c,d): #可以自由调换位置,但是两者都必须遵循短的在前,长的在后的原则。
pass
return a,b,c,d
func(a=1,b=2,c=3,d=4)
func(1,2,c=3,d=4)
3.默认值参数
定义函数时括号内写明了变量的默认赋值的称为默认值函数
def func(a,b,c,d=4):
pass
return a,b,c,d
func(a,b,c)
func(a,b,c,d=8)
#在调用时如果没有设定赋值就会使用设置好的默认数值,也可以在调用时手动修改数值
4.可变参数
当输入参数与输出不对等时,可以使用可变参数将多余的参数组合输出
def func(a,*x):
print(x)
func(1,2,3)
可变参数在变量名前面加上*,但是不会改变原有的变量名,可变参数会把多余的参数组合成元组的形式输出
def func(**y):
print(y)
func('name' = 'jack',age = 18)
当可变参数使用**时,可变参数会把多余的参数组合成字典的形式输出。



