标签:可迭代对象 数字 pytho 类型 split 布尔 验证 spl 进制
int: 用于计算和比较
二进制和十进制的推位(转换)
bit_length 二进制的有效占位
print(num.bit_length()) 求十进制数转换成二进制时所占用的位数
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)
字符串 -- 用于存储数据的 -- 比较少
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()) 判断的是不是字母,中文和阿拉伯数字
s = "alexcnb,wusirnb,ritian,egon,taibai,qiuqiu"
count = 0
while count < len(s):
print(s[count]) # s[0] s[1] s[2]
count += 1
print(len(s)) # 公用的 工厂函数 -- 所有类型都能用 他俩除外int - bool
for循环
s = "alex"
for i in s:
print(i)
for 关键字
i 变量
in 关键字
s 可迭代对象 int - bool
for a in "alex":
print(a)
pass # 过 -- 占位符
...
print(a)
输出为:
a
l
e
x
x
面试题:循环后的i变量指向的是最后的一个元素
占位: pass ...
range()
s = range(1,10) # 面试大坑 (python3打印是它自己本身 python2打印是列表)
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)
标签:可迭代对象 数字 pytho 类型 split 布尔 验证 spl 进制
原文地址:https://www.cnblogs.com/hql1117/p/10985089.html