Python基础3_基本数据类型,字符串,for循环
一. python基本数据类型
1. int 整数, 主要用来进行数学运算
2. str 字符串. 可以保存少量数据并进行相应的操作
3.bool 判断真假. True False
4. list 存储大量元素 用 [ ] 表示
5. tuple 元祖. 不可以发生改变 用()表示
6. dict 字典 保存键值对, 一样可以保存大量数据
7. set 集合 保存大量数据 不可以重复 其实就是不保存value的dict
二. 整数 int
bit_length() 计算整数在内存中占用的二进制码的长度
三. 布尔值 bool
1.结论一 把x类型转换成y类型 y(x)
2 结论二 所有的空都可以保存False
表示False的数据: 0, "". [ ]. { }. set( ). tuple( ). None
while 1 :
循环体
死循环用1代替True, 因为1的效率高(底层转换)
四. 字符串 str
字符串是不可变的数据类型, 不论如何操作, 对原来的字符串是不会有影响的
1. 切片和索引
索引: 索引就是下标, 切记,下标从0开始
str[i] 第i位的元素 不能越界 若i是负数, 表示倒数第i个
切片: 我们可以使用下标来截取部分字符串的内容
语法: str[start : end]
规则: 顾头不顾尾
str[i:] 从第i位获取到尾
str[ :-1] 取到倒数第一个
str[ : ] 原样输出
str[ : : -1] 倒着输出一遍
跳着截取
step 步长 控制方向默认是1,
[start : end : step] 每step个切一个, s为正, 从左往右切, s为负, 从右往左切
[ : 5 : 2] 从头开始到第五个, 每两个取一个
[4 : : 2] 从4开始到最后一个, 每两个取一个
[-5 : : 2] 从-5开始到最后一个, 每两个取一个
[-1 : -5] 什么都没有,因为是从左往右获取的
[-1 : -5 : -1] 步长是-1, 这是就从右往左获取了
[-5 : : -3] 从倒数第5个开始,到最开始, 每3个去一个
2.字符串的相关操作
(1). 大小写转来转去
s.capitalize() 首字母变大写
s,upper() 全部转换成大写 应用:忽略大小写的时候,验证码
s.lower() 全部转换成小写
s.swapcase() 大小写相互转换
s.casefold() 转换成小写 lower对某些字符支持不够好. casefold对所有字母都有效,包括一些东欧字母
s.title() 每个单词(被特殊字符隔开)的首字母大写 中文也算特殊字符
(2). 切来切去
s,center(10, *) 居中 拉长成10,把原来的字符放在中间, 其余位置补*
s.expandtabs() 更改tab的长度 好像没啥用
s.strip() 去掉两端的空格 应用: 模拟用户登录
s.strip("x") 去掉两端的x
s.lstrip() 去掉左边的空格
s.rstrip() 去掉右边的空格
s.replace(old, new, x) 替换 把old替换成new, 替换x次
s.split("x") 切割 用x切割字符串 ***如果切割符在左右两端,.那么一定会出现空字符串
3. 格式化输出
4. 查找
s.startswith("x") 判断s是否以x开头
s.endswith("x") 判断s是否以x结尾
s.count("x") 查找s中x出现的次数
s.find("x") 查找s中x出现的位置 如果有, 返回索引 如果没有, 返回-1
s,index("x") 查找s中x出现的位置 如果有,返回索引 如果没有, 程序报错
s.find("x", 8 , 22) 切片找
5. 条件判断
s.isupper() 判断是否由大写字母组成
s.islower() 判断是否由小写字母组成
s.isalnum() 是否由字母(汉字)数字组成
s.isalpha() 是否由字母(汉字)组成
s.isdigit() 是否由数字组成
s.isdecimal() 是否由小数组成
s.isnumeric() 是否由数字组成, 可以识别中文数字
6. 计算字符串的长度
len(s) 计算字符串s的长度 len()和print()是prthon的内置函数,所以访问方式不一样
7. 迭代
for遍历字符串
语法:
for str in 可迭代对象
语句体
可迭代对象: 可以一个一个往外取的对象
in有两种用法:
1. 在for中, 把每一个元素获取到并且赋值给前面的变量
2. 不在for中, 判断xxx是否在str中