int
a = 8 # 1000 # # type() # 内置函数 # # input() # # str() # # int() # a.bit_length() # xxx.方法() print(a.bit_length()) # 返回的是x的二进制长度 # 二进制: 0 1 逢二进一 # 十进制 : 0-9 逢十进一 # 八进制: 0-7 逢8进一 # 十六进制: 0-F 逢16进一 # 所有的内置函数都是直接调用的 # print("哈哈") # 就是打印 # 所有的方法都是对象xxxx.方法()
类型装换
# True: 1 # False: 0 # bool -> int # bs = False # bool值 # print(type(bs)) # <class ‘bool’> # # x = int(bs) # 1 # print(x) # 1 # print(type(x)) # <class 'int'> # int -> bool # 0:False # 非0:True # print(bool(-1)) # print(bool(0)) # 某些大牛习惯性这么写死循环 # 1 效率会高一点点 # True -> 数字 1 # while 1: # print("我的天啊") # 结论1:把x转换成y类型 y(x) # 结论2:空的东西是False, 非空的东西是True # False: 0,'',[],{},set(),tuple(),None(真空) # print(bool("你好")) # True # print(bool(" ")) # True # print(bool("")) # False print(bool({})) # False
索引切片
# -7-6-5-4-3-2-1 # 0 1 2 3 4 5 6 # s = "问能提笔安天下" # print(s[3]) # print(s[7]) # index out of range 超过了索引的范围 # print(s[-8]) # 反向索引 - 反向 # 切片 从字符串中获取新字符串 s = "银王喜欢和金王一起讨论污王" # s1 = s[5]+s[6]+s[7]+s[8] # print(s1) # s[start: end] 从start切到end。 但是不包含end. 顾头不顾尾 # s2 = s[5:9] # 从5-9 没有9 # print(s2) # print(s[3:7]) # 欢和金王 # print(s[5:]) # 从5开始, 到末尾 # print(s[:5]) # 从头开始到5结束 # print(s[:]) # 从头到尾 # print(s[5:3]) # 默认的方向是从左到右. # s[start: end: step] step如果是正数 从左到右。 如果是负数就是从右到左 # s = "金毛狮王谢逊紫衫龙王黛绮丝" # print(s[3:1:-1]) # 可以从右往左切片 # print(s[1:8:3]) # print(s[::-1]) # 总结: # s[start: end: step] # start: 起始位置 # end: 结束为止。取不到 # step: 步长。 每隔xx个取1个。 默认是1 如果step是-1 从右往左取值
字符串操作
# s = "alex_dsb_WuSir_xSB" # s1 = s.capitalize() # 首字母大写 # print(s1) # s2 = s.lower() # print(s2) # s3 = s.upper() # 要求你记住。把字符串转换成大写, 当你需要忽略大小写的时候 # print(s3) # # while 1: # content = input("请输入你要喷的内容, 输入exit退出:") # if content.upper() == "EXIT": # eXiT -》EXIT # break # print(content) # s = "alex_dsb_WuSir_xSB" # s4 = s.swapcase() # print(s4) # s2 = "БBß" # 俄美德 # print(s2) # print(s2.lower()) # print(s2.casefold()) # s = "alex is not a go哈aod man" # s5 = s.title() # print(s5) # s = "老男孩" # s1 = s.center(10) # print(s1) # s = " alex 昨天 又去 大包间了 " # s6 = s.strip() # 默认去掉左右两端的空白. 空白包括: 空格 换行符 制表符 # print(s6) # print(s) # 用户输入的东西都是不安全的。 有问题的。 # username = input("用户名:").strip() # pwd = input("密码:").strip() # if username == "alex" and pwd == "123": # print("登陆成功 ") # else: # print("登陆失败") # s = "sb_alex_sb_sb_wusir_sb" # s1 = s.strip("sb") # 可以去掉左右两段指定的内容 # print(s1) # s = "hello world,good morning " # print(s.replace("o", "sb")) # s = "追风筝的人_看见_明朝那些事_大秦帝国_成功心理学" # print(s.split("看见")) # 切割 # s = """诗人 # 学者 # 渣渣 # """ # print(s.split(" ")) # s = "胡辣汤麻辣烫小火锅" # print(s.split("胡辣汤麻辣烫小火锅")) # 如果贴着边切。 结果里一定有空字符串 # %s 字符串占位 # s1 = "我叫%s, 我来自%s, 我喜欢%s" % ("sylar", "黑龙江", "赛利亚") # s2 = "我叫{}, 我来自{}, 我喜欢{}".format("sylar","黑龙江", "赛利亚" ) # s3 = "我叫{2}, 我来自{1}, 我喜欢{0}".format("sylar","黑龙江", "赛利亚" ) # s4 = "我叫{name}, 我来自{address}, 我喜欢{hobby}".format(name="sylar", hobby = "赛利亚" ,address="黑龙江") # print(s1) # print(s2) # print(s3) # print(s4) # startswith:以xxx开头 # print("alex昨天晚上又去大包间".startswith("wusir")) # print("alex昨天晚上又去大包间".endswith("间")) # s = "python is the perfect language" # print(s.count("e")) # 计数 # find() 查找 # s = "alex昨天去大包间" # print(s.find("wusir")) # find找元素如果找到了返回索引, 如果返回的是-1 没找到这个元素 # print("wusir" in s) # index() 索引 # s = "胡辣汤_猪蹄子_猪脚_猪腰子" # print(s.index("虎落步堂")) # index如果找到了 返回索引。 如果找不到。 报错 # 判断字符串的组成 # a = "adfdsafsdafsafsad123456789壹贰叁肆伍陆柒一二五" # # # print(a.isalpha()) # 字母 有问题, RE的时候就给你解决了 # # # print(a.isdigit()) # 阿拉伯数字 %d # # print(a.isnumeric()) # print(a.isalnum()) # # 求长度 # a = "宋海堂" # print(len(a)) # 内置函数 字符串长度。 字符串中有多少个字符 # 把任意字符串中的每一个字符打印出来 s = "胡辣汤好喝,疙瘩汤也好喝,所以再来一碗" # 要求你掌握 # index = 0 # while index < len(s): # 0 1 2 # print(s[index]) # index += 1 # for循环 # for c in s: # 把一个"可迭代对象"中的每一个元素拿出来赋值给前面的"变量" # print(c) # c:charactor, char 字符 ''' for 变量 in 可迭代对象: 循环体 ''' # for i in 10: # 'int' object(对象) is not iterable(可迭代的) # print(i) # s = "哈哈" # for c in s: # print(c) s = "今天周五了。 深圳有什么好玩的呢? 我爱学习, 我爱工作。 我爱代码" for c in s: if c == "爱": break print(c) else: print("我是收尾")