zn123 发表于 2022-5-16 21:34:40

python5.16

# 比较运算符====>返回的是布尔值True,False
# 一般运用在判断语句或者进行测试的断言
'''a=5
b=3
c=3
print(a>b) # True
print(a<c) # False
print(b>=c) # True
print(a!=c) # True
print(b!=c) # False
print(b==c) # True
print(b<=c) # True'''

# 逻辑运算符 andornot====>返回布尔值
# and的关系是且的关系,两个条件必须同时满足
# or的关系是或的关系,两个条件满足其中一个即可
'''a=5
b=3
c=3
print(a>b and a>c) # True
print(a>b and a<c) # False
print(a>b or a<c) #True
print(not a>c) # False
print(not b==c) # False
print(not b!=c)# True'''

# 成员运算符====>返回布尔值
# int类型
# list1=["xian02","dcs","xiaoli",10086,110]
# print("10086" not in list1) # True
# print(10086 not in list1) # False
# print("xian02" not in list1) # False
# if "xian02" in list1:
#   print("测试成功")
# else:
#   print("测试失败")

# #python中的位运算符
# a=5
# b=11
# print(a&b) # 1
'''
按位与运算符
参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0
存储单位
1TB=1024GB
1GB=1024MB
1MB=1024KB
1KB=1024BIYE
1BIYE=8BITBIT就是比特位,比特位就是计算机中最小的存储单位,由8位0或者是1组成
0   0   00   00 0 0===>二进制
128 64 321684 2 1 ===>十进制中的数值

a=5===>转换成二进制
00000101====>二进制中的5(就是看哪几个数字加起来等于5)

b=11
00001011===>二进制中的11


计算
00000101
00001011
--------
00000001===>得到的结果是十进制中的1
a&b=1
'''
# print(a|b) # 15
'''
按位或运算符:
只要对应的二个二进位有一个为1时,结果位就为1
00000101
00001011
--------
00001111====>十进制中的15
'''
# print(a^b) # 14
'''
按位异或运算符
当两对应的二进位相异时,结果为1
00000101
00001011
--------
00001110===>十进制中的14
'''
# print(~a) # -6
'''
按位取反运算符
~a是-(x+1)按位取反的公式
也就是—(5+1)=-6
'''
# print(a<<2) # 20
'''
左移动运算符
往左移若干位,高位丢弃,低位补0

00000101===>00010100=20
'''
# print(b>>2) #2
'''
右移动运算符
往右边移动2位,低位的丢弃,在高位补零
00001011===>00000010
'''

# 练习题
# a=8
# b=24
# 求出按位&,|,^,<<,>>,~
# print(a&b) #8
# print(a|b) #24
# print(a^b) #16
# print(~a) #-9
# print(~b) #-25
# print(a<<2) # 32
# print(a>>2) #2
# print(b<<2) #96
# print(b>>2) #6


# python中的索引
'''
通过索引来取序列(字符串str,列表list,元组tuple)中的值
索引分为:使用格式str1      index是索引的意思
1、正向索引:从0开始,从左到右取值
2、反向索引:从-1开始,从右到左取值
'''
# str1="duoceshi"
# # print(str1) # e
# # print(str1) # d
# # print(str1[-4]) # e
# print(str1) # IndexError: string index out of range,索引越界错误
# print(str1[-9]) # IndexError: string index out of range,索引越界错误


# python中的切片
'''
1、切片是建立在索引的基础之上
2、切片的表达式:===>[开始索引:结束索引:步长]
切片只能取到开始索引的值,不能去结束索引的值
没有传入步长默认步长为1
3、当步长为正数的情况下
不传入开始索引:从左到右取值,且开始索引默认从0开始
不传入结束索引:从左到右取值,且结束索引默认取值到最后一位
4、当步长为负数的情况之下,取值是从右到左取值
不传入开始索引:开始索引默认从-1开始
不传入结束索引:结束索引默认到序列左边最后一个值
5、不传入开始与结束索引全部序列的值
'''

# str1="xiaozhang"
# print(str1) # xiaoz ,结尾值取不到
# print(str1[:5]) # xiaoz,不传入开始索引,默认为0开始
# print(str1) # iaozhang ,不传入结束索引,默认为取值到最后一位
# print(str1) # 结果为空,从右往左取值,没有值所以为空
# print(str1) # hzoai,从右到左取值
# print(str1[:5:-1]) # gna
# print(str1) # hzoaix
# print(str1[::]) # xiaozhang
# print(str1[::-1]) # gnahzoaix,翻转序列,用切片的方式翻转序列
# print(str1[-7:-3]) # aozh
# print(str1[-7:-3:-1]) #为空
# print(str1[-5:7]) # zha
# print(str1[-2:-5:-1]) # nah


# 跳切
# str1="xiaozhang"
# print(str1) # xaz
# print(str1[:6:2]) # xaz
# print(str1) # xiaozhang 取全部



# python中的字符串函数
# capitalize():字符串首字符大写
# str1="hello world"
# print(str1.capitalize()) # Hello world

# title()函数返回标题化的字符串,单词的首字母大写
# str1="hello world"
# print(str1.title()) # Hello World


# count()统计字符串中字符出现的次数
# str1="hello world"
# print(str1.count("h")) # 1
# print(str1.count("l")) # 3



# join(),按照自定义的字符可以把字符串中的所有的元素相连
# str1="hello world"
# print("_".join(str1)) # h_e_l_l_o_ _w_o_r_l_d
# print("~".join(str1)) # h~e~l~l~o~ ~w~o~r~l~d


# join()的另外一种用法,可以把列表中的元素用空字符连接在一起
# list1=["hello","world"] # 列表中2个元素
# print("".join(list1)) # helloworld
# print(type("".join(list))) # <class 'str'>

# split()函数可以根据字符串中的某个字符进行分割
# str1="hello world"
# print(str1.split("")) # ['hello', 'world'],根据空格进行分割
# list1=str1.split("")
# print(list1) # hello
# print(list1) # world
# print(type(str1.split(" "))) #<class 'list'>,通过split()函数分割之后会得到一个列表
# print(str1.split("o")) #['hell', ' w', 'rld'],根据o来进行分割


# 练习题
# 把字符串str1="user_name"输出成UserName
# 1. str1="user_name"
# print(str1.title())
# print(str1.title().split("_"))
# print("".join(str1.title().split("_")))

# 2.
# str1="user_name"
# str2=str1.title()
# list1=str2.split("_")
# print(list1+list1)#UserName,字符串相加,等于是把字符串相连在一起

# 3.str1="user_name"
# str2="".join(str1.title().split("_"))
# print(str2)


# strip()函数,删除字符串开头与结尾的字符
# str1="duoceshiodu"
# print(str1.strip("du")) # oceshio
# print(str1.strip("d")) # uoceshiodu
# print(str1.strip("u"))# duoceshiod
# print(str1.strip("du")) # oceshio,d和u是一个或的关系

# locals(ab):删除字符串开头有ab序列字符
# str1="duoceshioud"
# print(str1.lstrip("du")) # oceshioud
# print(str1.lstrip("ud")) # oceshioud
# print(str1.lstrip("dou")) # ceshioud

# rstrip(ab):删除字符串结尾有ab序列字符
# str1="duoceshioud"
# print(str1.rstrip("odu")) # duoceshi
# print(str1.rstrip("u")) # duoceshioud

# startswith():判断字符串是否以什么开始===>返回布尔值
# endswith():判断字符串是否以什么结束
# str1="duoceshioud"
# print(str1.startswith("duo")) # True
# print(str1.startswith("oud")) # False
# print(str1.endswith("oud")) # True

#应用场景
#判断文件是否以.txt结尾的
# file_name=input("请输入您需要上传的文件名称:")
# if file_name.endswith(".txt"):
#   print("文件有效")
# else:
#   print("文件无效")


#find()/rfind():字符串查询find()是左边开始查,rfind()从右边开始查,结果显示下标
# str1="duoceshioud"
# print(str1.find("c")) # 3,从左边开始查,结果显示索引
# print(str1.find("o")) # 2,找到了就返回数据,不继续找了
# print(str1.rfind("o")) # 8,从右边开始找,但是返回的索引都是正向索引
#如果遇到三个怎么办?
# str1="duoceoshioud"
# print(str1.find("o",3,6)) # 53和6表示的是开始索引和结束索引


#replace():replace(substring,newstring,max) substring表示被替换的字符串,newstring要替换字符串,max表示替换的次数
# str1="xiaozhang"
# print(str1.replace("x","d")) # diaozhang
# print(str1.replace("a","c")) # xicozhcng,如果不填写替换的次数,默认替换全部
# print(str1.replace("a","c",1)) # xicozhang,替换1次


# lower():方法转换字符串中所有大写字符为小写
# upper():将字符串中的所有小写字符转换为大写字母输出
# str1="Xiaozhang"
# print(str1.lower()) # xiaozhang
# print(str1.upper()) # XIAOZHANG

# isdigit():判断字符串中是否全为数字==>返回布尔值
# str1="12356abc"
# print(str1.isdigit()) # False
# str1="12356"
# print(str1.isdigit())# True

#isalpha():判断字符串中是否全为字母
# str1="xiaozhang"
# print(str1.isalpha()) # True
# str1="xiaozhang123"
# print(str1.isalpha()) # False

# isalnum():判断字符串当中是否全都为数字,全为字母,或者数字字母组合
# 返回布尔值:True和false,如果有特殊字符就是否

# str1="ajdojo"
# print(str1.isalnum()) # True
# str1="ajdojo1234"
# print(str1.isalnum()) # True
# str1="1234"
# print(str1.isalnum()) # True
# 判断一个字符串中是否存在特殊字符
# str1="ajdojo1234_"
# print(str1.isalnum()) # False


#istitle():判断字符串中首字母是否为大写,其他是否为小写,其他不为小写则为否
# str1="Xiaozhang"
# print(str1.istitle()) # True


#isupper()/islower():is开头的就是判断一个字符串是否展示为否都是大写或者都是小写
# str1="xiaozhang"
# print(str1.isupper()) # False
# print(str1.islower()) # True


# python中的列表
'''
列表是一个容器,可以装任何类型的数据
列表用list表示
表达式为:list=[]
'''

# 定义列表
# 1.第一种方式
# list1=["dcs","xian02","xiaozhang",10086]
# print(list1) # ['dcs', 'xian02', 'xiaozhang', 10086]
# print(type(list1)) # <class 'list'>,数据类型为list

# 2、使用list()函数把字符串可以转换成列表
# int(),str()函数,list()
# str1="xian02"
# list1=list(str1)
# print(list1) #['x', 'i', 'a', 'n', '0', '2'],转换成列表
# print(type(list1)) # <class 'list'>


# 列表中常用的函数与方法
# 1.索引赋值
# list1=["dcs","xiaoli","xian02",10086]
# list1="hello" #把hello赋值给到list1列表中索引为0的位置
# print(list1) # ['hello', 'xiaoli', 'xian02', 10086]


# 2.切片赋值
# list1=["dcs","xiaoli","xian02",10086]
# list1="hello"
# print(list1) # ['h', 'e', 'l', 'l', 'o', 'xian02', 10086],进行切片

# append()函数,添加值,在列表的末尾处添加元素
# append可以添加任何数据类型的元素到列表的最末尾
# list1=["dcs","xian02","xiaoli",123]
# list1.append("xianwang") # 可以添加字符串
# print(list1) # ['dcs', 'xian02', 'xiaoli', 123, 'xianwang']
# list1.append(789) # 可以添加整型
# print(list1) # ['dcs', 'xian02', 'xiaoli', 123, 'xianwang', 789]
# list1.append(["xiaozhang","xiaoliu"]) # 可以添加列表
# print(list1) # ['dcs', 'xian02', 'xiaoli', 123, 'xianwang', 789, ['xiaozhang', 'xiaoliu']]


#insert()函数
# list1=["dcs","xian02","xiaozhang",10086]
# list1.insert(0,"xiaowang") # 按索引取值,放第一位
# print(list1) # ['xiaowang', 'dcs', 'xian02', 'xiaozhang', 10086]


# 用insert函数可以添加int类型
# list1=["dcs","xian02","xiaozhang",10086]
# list1.insert(1,10010) #把10010放在索引1的位置上
# print(list1) # ['dcs', 10010, 'xian02', 'xiaozhang', 10086]


# 可以添加列表
# list1=["dcs","xian02","xiaozhang",10086]
# list1.insert(2,["xiaohe","xiaozi"])
# print(list1) # ['dcs', 'xian02', ['xiaohe', 'xiaozi'], 'xiaozhang', 10086]


页: [1]
查看完整版本: python5.16