一.常见的数据类型
1. int ==> 整数. 主要⽤用来进⾏行行数学运算 \
(常见的操作有+-*%)
a.bit_length()
a= 4 # 10进制 4 二进制 100 print(a.bit_length()) :用来看十进制数在二进制中的长度
2.bool
(没有操作 类型转换 字符串转化成整数型 int()就可以)
例子: 类型转换
a = "10" b = int(a) print(type(b)) 结果为 <class 'int'> int类型
a = 10 print(type(a)) s = str(a) print(type(s)) s结果为 <class 'str'> 字符串类型
a = 10 b = bool(a) print(b) b结果为true
s={}
if s: print("gg") #s为0所以打印不出来 while {}: # 1和True效率: 1的效率比True高一点点 print("还我钱!") # 同理
结论:想要转化成什么类型就用这个类型括起来
ture一般默认为1,false一般默认为0
可以当作false来处理的数据有:0 "" {} [] () none
三/字符串
1. 把字符连成串.在python中用 (' ') (" ") (""" """)引起来的的内容称为字符串 .
单一文字符称为字符.
2.索引 :反映低某个未知的字符,索引下标从0开始使用[]来获取数据.
s = '刘德华很帅但是张国荣更'
print(s[2])
print(s[11]) print(s[-5]) # 倒数第一 print(s[-4]+s[-3]+s[-2])
3切片
语法str[start:end ] 规则 顾头不顾尾 从start开始 到end结束但不包括end
s = '刘德华很帅但是张国荣更' #print(s[2]) #print(s[11]) #print(s[-5]) # 是 #print(s[-4]+s[-3]+s[-2]) #print(s[5]) #print(s[0]+s[1]+s[2]) #print(s[3:5]) #print(s[-4:-1]) #print(s[-1:-4]) #默认方向只能是从左到右,所以该步不执行 #print(s[0:])#从零开始直到结尾 #print(s[:5])#从领到尾 #print(s[:])#从头到尾
4步长: 如果是+从左往右,如果是-从右往左,每n个取1个
s = "我要开始玩幺蛾子了你们怕不怕我很怕" # print(s[1:5]) # print(s[5:1:-1]) #第三个参数是步长 print(s[1:5:3])#要始 从左到右跳两 print(s[4:8:2])#玩鹅 print(s[::2]) # 从头到尾跳两02468 print(s[-1:-6:-2])#从右到左跳两 print(s[::-3])#从头到尾反跳3 print(s[::-1])#从头到位反跳1
简单试试
s = "上海自来水来自海上" # 回文 s1 = s[::-1] if s == s1: print("是回文") else: print("不是回文
5操作方法
(1) s1.upper() #全部转化成大写
s1.lower()#全部转化成小写
= "aleX is not a good man! Tory is a good man" s1 = s.capitalize() # 首字母大写 s1 = s.lower() s2 = s1.upper() # 转化成大写字母. 要求记住. 使用场景:忽略大小写时需要
print(s2)
while True: content = input("请输入你要喷的内容(输入Q退出):") if content.upper() == 'Q': # 当用户输入q或者Q的时候退出. 这里要忽略大小写 break print(content)
(2) s.strip() 去掉空白
s = " \t 你好啊. 我叫赛利亚 " print(s) s1=s.strip()可以去掉前边空白 print(s1)
(3)s.replace(oud,new) 字符串替换
s = "alex_wusir_ritian_taibai_evaj_eggon" s1 = s.replace("taibai", "taihei")#把太白换成 太黑 s1 = s.replace("i", "SB", 2)把i换成sB换两遍 也就是前两个 print(s1)
(4)s.split()切割,结果是list
print("周润发\n周星驰周笔畅周杰伦") # \n 是换行 s = "周润发周星驰周笔畅周杰伦" lst = s.split("周润发周星驰周笔畅周杰伦") # 切割的内容在边上. 会出现空字符串 print(lst)
(5)s.startswith() 判断是否以xxx开
s.endswith() 判断是否以xxxxx结尾
= "今天的内容非常简单.你们信吗? 作业也很容易. 就是整理不太好" print(s.startswith("太好了")) #false print(s.endswith("太好了")) #false
(6)find()查找
s = "胡辣汤炸鸡啤酒烤鸭酱肘锅包肉炸鸡炸鸡炸鸡" # # print(s.count("炸鸡")) # 计数 # print(s.find("疙瘩汤")) # 如果找不到返回-1 用这个 # print(s.index("疙瘩汤")) # 如果找不到报错.
(7)s.isdigit() 判断是否是数字组成
s17 = "-123.12" s17 = s17.replace("-", "") # 替换掉负号 if s17.isdigit(): print("是整数") else: if s17.count(".") == 1 and not s17.startswith(".") and not s17.endswith("."): print("是小数") else: print("不是小数")
s = "一二壹贰叁肆萬" print(s.isnumeric())#也是判断是否数字
(8)len()求长度.内置函数 求字符串的长度
s = "我是上帝, 你也是上帝" print(len(s)) # 内置函数len(字符串) 返回给你字符串的长度
6 for循环
结构为:
for 变量 in #可迭代对象:
#循环体break, continue)
else:
当循环结束的时候执行else