定义字符串的三种形式:
a='asdf'
a="asdf"
a="""asdf"""
字符串引号的嵌套
#包含双引号
name='"joker"'
#包含单引号
name="'joker'"
#使用转义字符,解除引号
name="\"joker\""
字符串的拼接
#字符串字面量之间的拼接
"学习"+"努力"
#字符串字面量和字符串变量之间的拼接
name="joker"
print("你是"+name)
注意事项:拼接操作只能在字符串类型内进行,无法与非字符串进行拼接
字符串格式化(%方式)
#占位型拼接
day=12
subject=python
message="这是我第%s天学习python,我爱学习%s"%(day,subject)
其他类型的占位
%s // 转化为字符串放入占位位置
%d // 转化为整数放入占位位置
%f // 转化为浮点数放入占位位置
格式化的精度控制
# 通过m.n的形式控制
# m是指宽度
# n是指小数位数
# m比数字本身宽度小则不发挥作用
# n对小数部分进行限制,四舍五入
字符串格式化(快速写法)
# f {占位}
name="ni"
time=2004
print(f"我是{name},出生于{time}")
输入语句
a=input("请输入")
#无论输入什么类型的数据,得到的数据永远是字符串类型
布尔类型与比较运算符
#布尔类型
a=True
b=False
#比较运算也可以得到布尔类型
if语句
if 要判断的条件:
条件成立,要做的事情
if else 语句
if 判断条件:
条件成立,执行语句
else:
上述条件不成立,执行语句
if elif else语句
if 条件一:
执行语句1
elif 条件二:
执行语句2
elif 条件三:
执行语句3
while语句
while 条件:
条件满足,语句1
条件满足,语句2
条件满足,语句3
、、、、
#条件需要是布尔类型
for语句
name="aaawwwsss"
for w in name:
print(w)
range语句
#语法1
range(n) //从0开始取到n-1
#语法2
range(n,m) //从n开始取数,取到m-1
#语法3
range(n,m,step) //从n开始取数,步长(相邻两数之差)为step,一直取到m-1
函数
def 函数名(传入参数):
函数体
return 返回值
#函数需要先定义,后调用
list列表
#列表的定义
变量名称=[元素1,元素2,元素3,元素4]
#空列表的定义
变量名称=[]
变量名称=list()
#列表的下表索引
name=[1,2,3]
name[0]=name[-3] // 1
name[1]=name[-2] // 2
name[2]=name[-1] // 3
my_list=[[1,2,3],[4,5,6]]
my_list[0][0] // 1
my_list[1][2] // 6
#列表常用操作
列表.index(元素) // 查找元素在列表中的下表索引值,如果该元素存在,则返回下标索引;反之,报错
列表[下标]=值 // 对指定下标的值进行修改
列表.insert(下标,元素) // 在指定的下标位置,插入指定的元素
列表.append(元素) // 在列表的最后追加元素
列表.extend(其他数据容器) // 将其他数据容器的内容取出,依次追加到列表尾部
del列表[下标]
列表.pop(下标) //删除指定下标的元素,后者可以将指定的元素取出存入变量
列表.remove(元素) //从前往后遍历列表,移除第一个匹配的元素
列表.count(元素) //统计列表中某元素的数量
len(列表) //统计列表中元素的数量
列表.clear() //清空列表
tuple元组
#和列表一样,可以存储多个不同类型的元素,但是与列表不同,元组不可修改
#若元组中嵌套了list,那么list中的元素可以修改
#定义元组
变量名称=(元素1,元素2,元素3)
#定义空元组
变量名称=()
变量名称=tuple()
#单个元素的元组
t=("person",) //必须在元素1后面加逗号
#元组的方法
index(元素) // 查找某数据在元组中的下标索引
count(元素) // 统计某个数据在元组中出现的次数
len(元组) // 统计元组中所有数据的个数
str字符串
#字符串也可以像列表,元组一样,支持下标索引,从前往后从0开始,从后往前,从-1开始
#字符串无法修改,若进行修改会得到一个新的字符串
#字符串方法
字符串.index(元素) //查找元素对应的起始下标
字符串.replace(字符串1,字符串2) //将字符串中的字符串1,全部替换为字符串2,所得的结果是一个新的字符串,返回这个新的字符串
字符串.split(分割字符串) //以分割字符串为界限,分割字符串,将结果存入列表中,返回这个新的列表
字符串.strip()
字符串.strip(元素) //前者,去除字符串首尾的空格;后者,去除字符串首尾的对应元素
字符串.count(元素) //统计字符串中对应元素的数量
len(字符串) //统计字符串中所有字符的个数
序列的切片操作
序列:内容连续,可以通过下标索引的一类数据容器——列表,元组,字符串
my_list=[0,1,2,3,4]
result1=my_list[1:4:1] //[1,2,3]
my_tuple=(0,1,2,3,4)
result2=my_tuple[::2] //(0,2,4)
mt_str="person"
result3=my_str[4:1:-1] //"osre"
set集合
#集合与前三个数据容器的不同是,集合自带去重处理且无序
#集合的定义
变量名称={元素,元素,元素,元素,元素}
#定义空集合
变量名称=set{}
#集合的方法
集合.add(元素) //添加新元素
集合.remove(元素) //移除指定元素
集合.pop() //随机取出一个元素,剩下的元素留在集合
集合.clear() //清空集合
集合1.difference(集合2) //取两个集合的差集,取出集合1里存在,但是集合2里不存在的元素,构成一个新的集合,并且返回这个新的集合
集合1.difference_updata(集合2) //对集合1进行修改——消除与集合2中相同的元素,集合2不变,返回集合1
集合1.union(集合2) //将集合1与集合2合并,得到一个新的集合,返回这个新的集合
len(集合) //统计集合内的元素数量
#集合遍历使用for循环,不能使用while循环
dict字典
#字典的定义
通过key找到value
my_dict={key:value,key:value,key:value,key:value}
#空字典的定义
my_dict={}
my_dict=dict()
#字典的key和value可以是任意数据类型,但是key不能为字典
#字典新增/更新元素
字典[key]=value
#字典方法
字典.pop(key) 获得指定key的value,同时将这个value从字典中删除
字典.clear() 清空字典
字典.keys() 获取字典全部的key
len(字典) 获取字典的全部元素个数