变量名包含字母,数字,下划线,但不以数字开头
单引号和双引号都可以定义一个字符串,用单引号定义,句子中双引号看作普通符号,不需要转义,反之同理
改变字符串大小写:
name.title()
name.upper()
name.lower()
删除字符串空白:
name.rstrip()
name.lstrip()
name.strip()
列表:
添加:
list.append(元素) 将新元素添加到列表末尾
list.insert(位置,元素)添加到列表中 a.insert(0,7) 将7这个新元素添加到列表a的第一个位置,即a[0],原来的元素右移
删除:
list.pop(元素位置) 弹出列表中某个元素,并可继续使用他 如A是一个列表,a是其中第三个元素
b是一个变量,b=A.pop(2)等价于b=A[2]
list.remove(元素)当不知道元素位置时,使用此方法。不会像pop一样返回值。只删除列表中第一个指定的值,若该值在列表中出现多次,则需要多次删除。
排序:
list.sort() 永久性排序 list.sort(reverse=Ture) 反向排序,永久性
list.reverse() 反转列表元素原来的排列顺序 也是永久性 再次调用reverse即可返回原来的排序
get(指定键,指定键不存在时返回的值(可选))
items()
keys()
values()
在字符串中想要使用某个字符串变量的值来创建完整的消息,用大括号括起来变量
print(f”hello,{full_name.title()}!welcome to china!")
message=f”hello,{full_name.title()}!welcome to china!"
其中,full_name是一个字符串变量
书写很大的数时,利用下划线分组
age=14_0000_0000
全大写将某个变量视为常量,没有常量类型
a=['monday',7,8,5]
列表元素的索引从0 开始,类似数组
修改——访问该元素,重新赋值 list[-a]表示访问倒数第a个元素
添加——方法append(),方法insert()。
删除——del语句 del A[1],删除第二个元素
pop()方法,remove()方法
sort() 方法,按照某种方式
sorted() 函数进行临时排序 sorted(list,reverse=Ture) 对函数进行反向临时排序 按照某种方式
reverse()方法 倒着排列列表 永久性
函数 len(list) 返回列表长度值
for 变量 in list***:***
注意缩进,执行操作
range()函数 range(1,5)生成1,2,3,4 range(5) 从0开始生成0,1,2,3,4 range(2,11,2) 第三个参数为步长,生成2,4,6,8,10
for num in range(n):可让这个for循环循环n次
list()函数 将range()结果直接转化为列表
A=list(range(1,6)) print(A) 结果为[1,2,3,4,5]
list[1:4] 即创建包含list[1],list[2],list[3]的切片
list[:4] 创建包含list[0]...list[3]的切片
list[2:] 创建包含list[2]...到最后一个元素的切片
list[-3:] 创建包含list列表中最后三个元素的切片
使用for循环课遍历切片:for a in A[-3:]:
A=[.....]
B=A[:]
这样A B是两个相同的列表,但并非同一个列表
若A=[......]
B=A
这样实际上是让新变量B关联到已经与A相关联的列表,即A B指向同一个列表
定义:tuple=(200,5,....)
元组由逗号标识,若只定义一个元素的元组,必须在元素后面加上逗号,如A=(3,)
可用for循环遍历元组
可以给元组变量重新赋值:
A=(1,2)
A=(3,4)
此时元组A中元素的值就是3和4
if (条件):
操作语句
每条if语句的核心都是一个值为Ture或False的表达式,这种表达式称为条件测试,别名布尔表达式。
在检测字符串是否相等时,区分大小写
利用and检查多个条件,想当于&&
利用or检测某个条件,相当于||
检查元素是否在列表中:if a (not) in list:
检查列表是否为空:if list:
if-else语句:
if ...:
操作语句
else:
操作语句
if-elif-else语句:elif相当于else if
如果只想执行一个模块的内容,利用if-elif-else语句;若要执行多个代码块,则使用一系列独立的if语句
alien_0={'color':'green','points':5} 每个键值对之间用逗号分开 只有一个键值对时不需要加逗号
指定字典名和放在方括号内的键 alien_0['color'] 即获取与键相关联的值 也可以对这个键重新赋值
字典是动态结构,可随时添加键值对,依次指定字典名,方括号括起来的键和相关联的值,如:
alien_0['position']=0 即在字典后又添加了一个新的键值对
Z={} 可以创建空字典
可使用del语句删除键值对,如:del alien_0['color']
可使用方法get(键)访问值 alien_0.get('points')
for key,value in user_0.items():——方法items()返回一个键值对列表
print(f"Key:{key}")
for key on user_0.keys():
按特定顺序遍历键:
for key in sorted (user_0.keys()):
for value in users_0.values():
剔除重复项:
for value in set(users_0.values())
可使用花括号直接创建集合:
A={'ss','sss'} 不同于列表和字典,集合不会以特定的顺序存储元素
列表aliens,字典元素aliens_0,aliens_1...
for alien in aliens: 此时alien变量表示一个字典
alien['color']='yellow' 访问这个字典中的值
input(提示)函数,读取字符串
利用函数int()获取数值输入
while 条件:
操作语句
break退出循环;continue返回循环开头
while list:即当列表不空的时候执行操作语句
while 元素 in list:即当元素在列表中时执行操作语句 元素出现几次循环就执行几次,可用于删除元素
responses={}
while Ture:
name=input("....")
response=input("....")
responses[name]=response
def 函数名(形参):
函数体
return ....
位置实参:
基于参数的顺序进行关联
关键字实参:
利用参数的名称值对进行传递
默认值只能放在参数最后,具有默认值的函数传递实参是可选的
例:
def FUNCTION(first,second,third='aaa')
函数体
return。。。
可以是简单值,也可以是列表,字典 可将返回值赋给变量
def function(*tops):
星号创建名为tops的空元组,将实参封装到这个元组中
def funtion(size,*tops):
模块是扩展名 为.py的文件
导入模块:import moudle_name as m ——as是给模块命名别名的 别名是m
导入模块中特定函数:from moudle_name import function_name as f 这个函数的别名是f
from module_name import * 导入这个模块中所有函数,但可能造成函数重名现象
class A:
def _init_(self,first,second):
def fun1(self):
def fun2(self):
A是类名,首字母大写,类中的函数叫做方法,self相当于this指针,必须位于其他形参的前面,属性即数据成员,_init_()是构造函数
my_dog=Dog('aaa',6) 会调用构造函数,传递参数对属性进行赋值
访问实例的属性和方法,都可利用句点表示法
无须利用实参定义的属性可以在构造函数中指定默认值,不需要在函数的形参中写出
修改属性的值可以利用句点表示法直接访问修改或者通过方法修改
class Car:
def _init_(self,a,b,c)
....
class Ecar(Car):
def _init_(self,a,b,c)
super()._init_(a,b,c)
子类自己的属性
super函数可以调用父类的方法
在子类中,可以重写父类的方法,同名覆盖
实例也可以用作属性
with open('文件名','r') as f:
with是关键字,可以妥善打开和关闭文件
读取每行:
for line in f: line = line.strip() if line == '': continue
split方法可以分隔一行中的内容 a,b=line.split('分隔标识')
另外,readlines()方法可以 读取每一行,并将他们存储在列表中
with open('文件名','w') as f: 省略模式实参,将以只读打开文件
写入空文件:f.write('')方法 不会自动换行
附加到文件下:
with open('文件名','a') as f:
再利用write()方法