一、数字类型
1、基础数字类型
- int 数字类型:1,2,3用于计算
- str 字符串 :'用户密','abcd' 存储少量数据进行操作
- bool 布尔值:判断真假 True,False
- list 列表:存储大量的数据: ['张三','李四', '1234']
- tuple 元祖 ,存储大量的数据,不可改变量里面元素。:(1,2,3,'张三','李四')
- dict 字典,存储关系性数据,查询速度快:{'张三':[13300000,'银行'],'二哥'[200,200,200]}
- set 集合 并集差集........
1)int 数字类型
1】二进制转换为十进制
0001 1010
上面是二进制,从右到左是0,1,2,3,4,5,6,7,8次方
b = 1 * 2 ** 4 + 1 * 2 ** 3 + 0 * 2 ** 2 + 1 * 2 **1 + 0 * 2 ** 0
print(b)
26
2】十进制转换成二进制
42转换成二进制计算:
从同图可以算出 42的二进制是0010 1010
3】十进制转二进制的有效二进制长度计算
42的二进制是0010 1010
它的有效二进制度长度
i = 42
print(i.bit_length())
2)bool
True
False
int与bool值的转换
int ---> bool ,非零转换成bools 是True, 0转换成bool 是False
print(bool(2)) #True
print(bool(-2)) #True
print(bool(0)) #Flase
3)str字符串转换成数字类型
字符串转化为数字: int(str), str必须是数字组成的
如:i = 1
s = str(i)
数字转化为字符串:str(int)
如:s = '123'
i = int(s)
非空字符串都是True,空字符串都是Flase
如:s = "" ------>Flase
s = "0" ------>True
4)int数字类型转换成字符串类型
password = str(input("请输入你的密码:"))
print(password,type(password))
#type(password) 查看输入的内容的数据类型
2、字符串索引与切片
按照索引取值
name = "python学习"
print(name)
#从左至右排序,从0开始
s1 = name[0]
print(s1)
s2 = name[1]
print(s2)
s3 = name[-1]
print(s3)
按照切片取值,顾头不顾尾
name = "python学习教程"
print(name)
#从左至右排序,从0开始
#(1)取python
s1 = name[0:6]
print(s1) # ----->python
s2 = name[:6]
print(s2) # ----->python 从头第0位取到6
#(2)取由学--程
s3 = name[6:]
print(s3) # ----->学习教程 从第6位取到最后一位
#步长
s4 = name[::2] # ----->pto学教 从头取到尾,再隔2个选(:2) s[首:尾:步长]
print(s4)
#倒取
s5 = name[::-1]
print(s5) # ----->程教习学nohtyp 加-1步长
3、str常用操作方法
1)字符串常用的操作方法:
1】upper lower
【1】把字符串重新生成一个全大写字母的字符串,不会对原字符串进行任何操作
s = "PYthon"
print(s.upper()) # ----->PYTHON
【2】把字符串重新生成一个全小写字母的字符串,不会对原字符串进行任何操作
s = "PYthon"
print(s.lower()) # ----->python
例:使用lower把code验证码和用户输入的验证码转换为小写字母再进行比对
username = input("请输入用户名:")
password = input("请输入密码:")
code = "QweA"
your_code = input("请输入验证码,不区分大小写:")
if code.lower() == your_code.lower() and username == "mrxiong" and password == "123456":
print("登陆成功!")
else:
print("登陆失败~!")
2】startswith endswith 判断从开始或者开头的内容是否相同
s = 'mrxiong'
#是否开始以mr开头
print(s.startswith('mr')) # ----->True
#是否结尾以g开头
print(s.endswith('g')) # ----->True
3】replace 替换字符
s = 'python学习'
s1 = s.replace('python','linux')
print(s1)
s = 'python学习和python练习和python实践'
s1 = s.replace('python','linux',2)
print(s1)
4】strip:空白:空格: (tab健) (换行符)
用于移除字符串头尾指定的字符(默认为空格)或字符序列
注意:**该方法只能删除开头或是结尾的字符,不能删除中间部分的字符。
print('python学习
python练习
python实践')
输出内容:
python学习
python练习
python实践
s = ' python学习python练习python实践'
print(s)
s2=s.strip()
print(s2)
输出内容:
python学习python练习python实践
python学习python练习python实践
去除内容:
s = 'rre学习练习实践asd'
print(s)
s2=s.strip('rdeas')
print(s2)
输出内容:
rre学习练习实践asd
学习练习实践
5】split 指定分隔符对字符串进行切片
默认按照空格分隔,返回一个列表
s = '学习 练习 实践'
print(s)
s2=s.split()
print(s2)
输出内容:
学习 练习 实践
['学习', '练习', '实践']
指定分隔符,可以以 : , 。等等为分隔符
s = '学习:练习:实践'
print(s)
s2=s.split(':')
print(s2)
输出内容:
学习 练习 实践
['学习', '练习', '实践']
s = ':学习:练习:实践'
print(s)
s2=s.split(':')
print(s2)
输出内容:
:学习:练习:实践
['', '学习', '练习', '实践']
s = ':学习:练习:实践'
print(s)
s2=s.split(':',2)
print(s2)
输出内容:
:学习:练习:实践
['', '学习', '练习:实践']
6】join 将序列中的元素以指定的字符连接生成一个新的字符串
s = '学习练习实践'
print(s)
s2 = '+'.join(s) #+号是连接符
print(s2)
输出内容:
学习练习实践
学+习+练+习+实+践
s = ['学习','练习','实践'] #前提,列表里的元素必须都是str类型
print(s)
s2 = ':'.join(s)
print(s2)
输出内容:
['学习', '练习', '实践']
学习:练习:实践
7]count
用于统计字符串里某个字符出现的次数。可选参数为在字符串搜索的开始与结束位置。
s = 'python学习和python练习和python实践'
s1 = s.count('p')
print(s1)
输出内容:
3
8】format 格式化输出
第一种用法:
s = '我叫{}今年{}姓别{}'.format('mrxiong',26,'男')
print(s)
输出内容:
我叫mrxiong今年26姓别男
第二种用法:
s = '我叫{0}今年{1}姓别{2}我依然叫{0}'.format('mrxiong',26,'男')
print(s)
输出内容:
我叫mrxiong今年26姓别男我依然叫mrxiong
第三种用法:
s = '我叫{name}今年{age}姓别{sex}我依然叫{name}'.format(name='mrxiong',age=26,sex='男')
print(s)
输出内容:
我叫mrxiong今年26姓别男我依然叫mrxiong
9】is系列
判断字符串是否由字母、数字、十进制组成
**print**(str.isalnum()) # 判断所有字符都是数字或者字母
**print**(str.isalpha()) # 判断所有字符都是字母
**print**(str.isdigit()) # 判断所有字符都是数字
**print**(str.islower()) # 判断所有字符都是小写
**print**(str.isupper()) # 判断所有字符都是大写
**print**(str.istitle()) # 判断所有单词都是首字母大写,像标题
**print**(str.isspace()) # 判断所有字符都是空白字符、 、
、
name = 'taobao123'
print(name.isalnum()) #字符串由字母或数字组成
print(name.isalpha()) #字符串只由字母组成
print(name.isdecimal()) #字符串只由十进制组成
print(name.isdigit()) #字符串只由数字组成
print(name.islower()) #字符串只由大写字母组成
print(name.isupper()) #字符串只由小写字母组成
print(name.istitle()) #所有单词都是首字母大写组成
print(name.istitle()) #所有字符都是空白字符组成
输出内容:
True
False
False