一:int整数类型,bool类型
一:int类型,整数 1,bit_length() 返回一个数的二进制长度 a = 5 # 0 1 10 11 100 101 print(a.bit_length()) a = 10 print(type(a)) s = str(a) print(s) print(type(s)) # int(s) # 想把某数据转换成xxx数据类型. xxx(数据) 二:bool类型 布尔只有两个值. True,False. 一般是没有什么操作的. 类型转换的问题: 想把xx转换成yy. yy(xx) 可以表示False的内容:0, "", [], tuple(), {}, None 所有的空都是False. 所有的非空是True a = 0 # False print(bool(a)) s = "" # 空字符串是false print(bool(s)) # True # 空的东西是False. 非空的东西是True lst = [1] # 空列表是False print(bool(lst)) dic = {'jj':'林俊杰'} # 空字典是False print(bool(dic)) a = None # 表示空. 真空. print(bool(a)) # 所有的空都是False. 所有的非空都是True # 想把某数据装换成xxx数据类型. xxx(数据) 三:类型转换 # 想把某数据装换成xxx数据类型. xxx(数据) str => int int(s) int => str str(i) lst => tuple tuple(lst) tuple => list list(tu) while 1: # 死循环 因为1是非空的,是true print("alex是个人才")
二:字符串介绍
str类型 字符串 由',",''', """阔起来的内容就是字符串 字符串是不可变的数据类型.不论你执行任何操作. 源字符串是不会改变的, 每次操作都会返回新字符串
三:字符串切片
一:字符串切片 1. 索引和切片 索引从0开始, 使用[下标]可以获取到每一个字符, 还可以倒着数 切片: [起始位置:结束位置:步长] 1. 顾头不顾尾 2. 默认从左到右取值. 3. 当步长为负可以从右往左取值 # s = "伊丽莎白鼠" # print(s[0]) # print(s[1]) # print(s[2]) # print(s[3]) # print(s[4]) #print(s[5]) # 索引不能超过边界 # # print(s[-1]) # 倒数第一个 # print(s[-2]) # print(s[-3]) # print(s[-4]) # print(s[-5]) s = "伊丽莎白鼠的溜肥肠还有挖掘机" # 切片 [起始位置: 结束位置] 1.顾头不顾尾, 2.从左往右切 # print(s[1:3]) # 从1切到3. 但是取不到3 [1,3) # print(s[1:]) # 从1开始切. 切到结尾 # print(s[:2]) # 从头切到2 # print(s[:]) # 从头到尾 # print(s[-3:-1]) # 只能从左往右切 # 给出第三个参数来控制方向,第三个参数叫步长 print(s[-1:-3:-1]) # - 表示反方向. 从右往左切 print(s[4:10:3]) print(s[-3:-9:-2])
四:字符串的相关操作
一: 字符串相关操作 1. upper() 转换成大写 2. stript() 去掉空白 3. replace(old, new) 把xxx替换成xxxx 4. split() 切割. 返回列表. 用多长的刀. 就要损失掉多少 5. startswith() 判断是否以xxx开头 6. find(), count(), index() 7. len() 字符串长度. python的内置函数 二,应用样例 1,capitalize(),字符串首字母大写,后面的字符串的如果有大写的,会强制转成小写,而只把首字母强制转成大写。 这个函数的特点是:最后的结果必须是首字母大写,后面的全部强变成小写 s = "al1ex is a gay and Wu傻sir is A gay too" s1 = s.capitalize() # 把首字母变成大写 print(s1) 2,lower() 所有字符串中的字母全部变成小写 s2 = s.lower() # 小写 print(s2) 3,upper() 所有字符串中的字母全部变成大写 s3 = s.upper() # 大写 print(s3) 4,swapcase() 大小写互换 s4 = s.swapcase() # 大小写互换 print(s4) 5,title() s5 = s.title() # 把每个单词的首字母大写 print(s5) 6,center() 用一个分隔符把字符串包在中间,并且可以对的两边的分隔符做乘积运算 s = "sb" s1 = s.center(10, "*") # 强行使用*在原字符串左右两端进行拼接 print(s1) 打印出来的结果是这样的 ****sb**** 7,strip() 去掉字符串两边的空格或分隔符 s = " alex is a gay " s1 = s.strip() # 默认去掉空格. 空白\t \n print(s1) # username = input("请输入用户名:").strip() # password = input("请输入密码:").strip() # if username == 'alex' and password =="123": # print("成功") # else: # print("失败") # s = "sb alex wusir sb sb taibai taibai sb" # print(s.strip("sb")) # 可以指定要去掉的内容 8,replace() # s = "泰坦尼克号, 西虹市首富, 小猪佩奇, 冒险王" # s1 = s.replace("冒险王", "西西里的美丽传说") # s2 = s.replace("佩奇", "wusir") # print(s2) # # s = "alex_wusir_taibai_ritian" # s1 = s.replace("_","") # print(s1) s8 = "sylar_alex_taibai_wusir_eggon" s9 = s8.replace("i", "sb", 2) # 换两次,也就是值替换找到的前两个 print(s9) 9,split()字符串切割 s8 = "sylar_alex_taibai_wusir_eggon" lst = s8.split("taibai") # 切完的结果是一个列表. 列表中装的是字符串. 用什么切. 就会损失掉什么 print(lst) s = """我家大门常打开 开放怀抱等你 后面是什么歌词 我忘了""" lst = s.split("\n") print(lst) 10,startwith()和endwith(),这个是判断,函数返回的是bool值 s = "alex is a gay" print(s.startswith("tory")) # 以xxx开头 print(s.endswith("girl")) # 以xxx结尾 11,字符串中书写的内容的判断 s = "abcdefg1@" print(s.isdigit()) # %d print(s.isalpha()) # 字母 print(s.isalnum()) # 是否由数字和字母组成 12,字符串中的查找 s = "I have a dream. I want to kill you!" # 都可以进行索引范围 print(s.count("a")) # 计算a在字符串中出现的次数 print(s.find("a")) # 查找xxx在字符串中出现的位置. 只找第一次出现的位置, 没有就返回-1 # print(s.index("z")) # 当字符串不存在的时候. 报错 13,汉语大写变数字小写 # s = "壹仟贰佰五十六萬拾" # print(s.isnumeric()) 14,字符串长度 字符串长度, python的内置函数len(), int(), bool(), str(), type() s = "娃哈哈,可口可乐" print(len(s)) # 字符串中的字符的个数 # s = "王小利刘能赵四" # # # 对字符串进行遍历. # n = 0 # while n < len(s): # print(s[n]) # n = n + 1 # # # 迭代 # for c in s: # charactor # print(c) 15,字符串的格式化 # s = "我叫%s, 我今年%s了, 我喜欢%s" % ("周杰伦", "40", "昆凌") # print(s) # s = "我叫{}, 我今年{}了, 我喜欢{}".format("周杰伦", "40", "昆凌") # print(s) # s = "我叫{0}, 我今年{1}了, 我喜欢{2}".format("周杰伦", "40", "昆凌") # print(s) # s = "我叫{name}, 我今年{age}了, 我喜欢{hobby}".format(hobby="周杰伦", age="40", name="昆凌") # print(s)