1.整数
123 # 计算和比较
14 0 # 十进制
num = 7 # 8421 00000111
print(num.bit_length()) # 求十进制数转换成二进制时所占用的位数
2.布尔值
bool # 布尔值 -- 用于条件使用
True 真
False 假
print(bool(-10)) # 0 是 False 非0的都是True
print(bool(" ")) # 空的字符串是 False 非空的就时True
print(type(str(True))) 布尔值可以转换成字符串
print(int(False)) # True 转化成数字 1 False 转换成数字 0
3.字符串
字符串 -- 用于存储数据的 -- 比较少
python 中只要是用引号 引起来的就是字符串
""
'' # 需要配合使用
""" """
''' '''
name = "meet,alex,wusir,wangsir,Eva_j"
01234567 (索引) #从左向右数数
-4-3-2-1 (索引) # 从右向左数数
a = name[1]
b = name[2]
print(a + b)
print(name[5:9]) # 区间[起始位置:终止位置] # 顾头不顾尾
a = name[0]
b = name[3]
c = name[6]
d = name[9]
print(a+b+c+d)
print(name[0:10:3])
默认是1 [起始位置:终止位置:步长] # 你走路迈的步子
起始位置 + 步长
print(name[0:100]) # 切片如果终止位置超出了不报错
print(name[100]) # 索引取值的时候超出了索引的范围会报错
print(name[::])
print(name[::-1]) #从左向右 +1 从右向左
a = name[8:11]
b = name[16:19]
c = name[-3:]
# 李亚鹏 谢霆锋 陈冠希
print(c,b,a)
print(name[::3])
name = "周扒皮,王菲,陈冠希,张柏芝,谢霆锋,周星驰,李亚鹏"
总结:
字符串,列表,元组 -- 都是有索引(下标)
索引是准确的定位某个元素
从左向右 0,1,2,3
从右向左 -1,-2,-3,-4
支持索引的都支持切片 [索引]
切片长度可以超出范围,索引长度不能超出范围 [起始位置:终止位置]
步长: 决定要走的方向,决定走的步子多大 [起始位置:终止位置:步长]
# 起始位置 + 步长
字符串方法:
全部大写
name = "meet"
name1 = name.upper()
print(name1)
print(id(name))
print(id(name1))
name = "MEET"
name1 = name.lower()
print(name1)
yzm = "o98K"
input_yzm = input("请输入验证码(o98K):")
if yzm.upper() == input_yzm.upper():
print("正确")
else:
print("错误")
以什么开头
name = "alex"
print(name.startswith('a')) # 就是以a开的头
以什么结尾
name = "zhuxiaodidi"
print(name.endswith("i")) # 就是以i结尾
count # 统计
name = "zhudidi"
print(name.count("zhu")) # 查询某个内容出现的次数
替换 ****
name = "alexnbnsnsn"
name1 = name.replace('n','s') # 替换
name1 = name.replace('n','s',2) # 替换 2是替换的次数
print(name1)
除去头尾两边的空格 脱 *****
name = " alex "
name1 = name.strip() # 可以写想要去掉的内容
print(name1)
if name == "alex":
print(666)
name = " alex "
print(name.strip())
分割 *****
name = 'alex,wusir'
print(name.split("w"))
默认是以空格分割 ,也可以自己制定分割
分割后返回的内容是一个列表
第三种字符串格式化
name = "alex{}wusir{}"
name1 = name.format('结婚了',"要结婚了") # 按照位置顺序去填充的
name = "alex{1}wusir{0}"
name1 = name.format('结婚了',"要结婚了") # 按照索引位置去填充
name = "alex{a}wusir{b}"
name1 = name.format(a="结婚了",b="马上结婚") # 指名道姓 填充
print(name1)
is 系列 -- 判断
name = "②"
print(name.isdigit()) # 判断是不是阿拉伯数字
name = "666"
print(name.isdecimal()) # 判断是不是十进制 -- 用它来判断是不是数字
name = "alexs你好"
print(name.isalpha()) # 判断的是中文和字母
name = "alex666"
print(name.isalnum()) # 判断的是不是字母,中文和阿拉伯数字
4.for循环
s = "alexcnb,wusirnb,ritian,egon,taibai,qiuqiu"
print(len(s)) # 公用的 工厂函数 -- 所有类型都能用 他俩除外int - bool
count = 0
while count < len(s):
print(s[count]) # s[0] s[1] s[2]
count += 1
for 循环
for i in s:
print(i)
for 关键字
i 变量
in 关键字
s 可迭代对象 int - bool
for a in "alex":
print(a)
# pass # 过 -- 占位符
# ... # 过
print(a)
range()
s = range(1,10) # 面试大坑 python2 和 python3
print(s) # 范围
for i in range(1,10,2): # (起始位置,终止位置,步长)
# range(10) 指定了终止位置,起始位置默认是0
print(i)
for i in range(100,-11,-1):
print(i)
for i in range(1):
print(i)
```