今天没有昨日回顾,做了几道题,有生成*的金字塔,进阶猜年龄等等。今天主要学了字符类型的内置方法,就目前而言,还不知道这些有序无序,可变不可变等信息有何作用,但先学着呗,万一有用的,。但是这些快捷方式应该挺好用的,还不错。!
目录1 为什么要有数据类型?
- 对于不同类型的变量需要不同的数据类型去描述
- 名字-字符串,爱好-列表,个人信息-字典
2 数字类型内置方法
2.1 整形
- 作用:身高,体重,年龄,id号
- 定义方式: y = 10
- 方法: print(y+x)+ - * / % //
- 存储一个值or多个值:一个
- 有序or无序:没有有序无序这一说
- 有序:有索引
- 无序:无索引
- 可变不可变:不可变
- 可变:值变id变
- 不可变:值变id不变
2.2 浮点型
- 作用:钱,商品价格,导弹轨迹计算
- 定义方式: y = 1.1, x = 2.2
- 方法: print(y+x) + - * / % //
- 存储一个值or多个值:一个值
- 有序or无序:没有有序无序这一说
- 有序:有索引
- 无序:无索引
- 可变不可变:不可变
- 可变:值变id变
- 不可变:值变id不变
3 字符串类型内置方法
- 作用:女朋友名字,性别
- 定义方式: name = 'sunch' , name = "wangby" ,name = str(10)
- 方法: 优先掌握,需要掌握,了解
- 存储一个值or多个值:一个值
- 有序or无序:有序
- 有序:有索引
- 无序:无索引
- 可变不可变:不可变
- 可变:值变id变
- 不可变:值变id不变
3.1优先掌握
name = ' sun cheng hao xue rui qing '
# 按索引取值
print(name[0]) #正向取第一个
print(name[-1]) #反向取第一个
# 切片:步长为正数,从左到右切片,负数从右到左切片
print(name[0:13:2]) #从0到12,顾头不顾尾
print(name[-12:]) #从倒数第12个取到最后一个
print(name[-1:-4:-1]) #此时仍是顾头不顾尾,即从右数第一个到第三个
print(name[-1::-1])
# 长度
print(len(name)) #计算字符串的长度
#成员运算 in|not in
print('sun' in name)
print('wang' in name)
print('xue' not in name)
print('liang' not in name)
# 移除空白,strip 移除两端的空格,括号里可以填想移除的,但必须在边缘
print(name.strip()) #成功移除两端空格
print(name.strip('qing')) #因为右端有空格移除不了qing
print(name.strip('qing ')) #给qing加上空格qing 就在右端就可以移除了,只要遇到了就都移除,所以他继续把空格和i移除了
# 切分(切割)split
print(name.split(' ')) #以空格为界把他切开形成列表
#循环取值
name_list = name.split(' ')
for i in name_list:
print(i)
3.2 需要掌握
s = '12345上山打老虎TIGER老虎没打着打到一直mouse小老鼠'
print(s.lstrip('13252'))
print(s.lstrip('15423'))
print(s.rstrip('老小鼠12'))
# 在Python中使用 lstrip 方法时,如果传入的是一个字符集合,那么它会移除字符串开头的所有这些字符,
# 直到遇到不在指定字符集合中的字符为止。这意味着,如果字符串开头的字符都在指定的字符集合中,那么这些字符都会被移除。
# l 从左开始 r 从右开始
print(s.lower()) #大写变小写
print(s.upper()) #小写变大写
print(s.startswith('1',0,3)) # 检查字符串中索引从2开始到3结束的字符串是否以’1‘开头,
# 返回值为true or false
print(s.endswith('鼠',10)) # 检查字符串中索引从2开始到3结束的字符串是否以’鼠‘结尾,
# 返回值为true or false,第二个值可省略,默认到最后
name = 'xiaowang xiaoliang xiaosun xiaoxue xiaoxiao xiaoliang'
print(name.split(" ",1)) #第一个为切割字符,第二个为切割次数,切割后成列表
name_list = name.rsplit(" ")
print(name.rsplit(" ")) #rsplit表述从右切,默认为左
print('.。。'.join(name_list)) #join用前面的字符把列表中的所有元素拼接起来
print(name.replace('xiaoliang','xiaowu',1))
print(name.replace('xiaoliang','xiaowu'))
#replace将旧的字符串替换成新的字符串,第一个为旧的,第二个是新的,第三个是替换个数,不写默认全部替换
print(name.isdigit())
print('10'.isdigit())
# isdigit 方法用于检查字符串是否只包含数字,并且是非空的。如果字符串至少有一个字符,并且所有字符都是数字,则返回 True;否则返回 False。
3.3 了解
s = 'zhihuzheyeyezhehuzhi'
print(s.find('zhe')) #从右往左找zhe
print(s.rfind('zhe')) #从左往右找zhe
# print(s.find('asdad')) #找不到返回值 -1
print(s.index('zhe')) #从左往右找zhe
print(s.rindex('zhe')) #从右往左找zhe
# print(s.index('sadsad')) #找不到就报错
print(s.count('zhe')) #计算zhe出现的次数
print('zhe'.center(50,'-')) # 50是总长度,center前面的是居中的字符串,剩余部分用第二个字符'-'填满
print('zhe'.ljust(50,'-')) # 50是总长度,center前面的是左侧的字符串,剩余部分用第二个字符'-'填满
print('zhe'.rjust(50,'-')) # 50是总长度,center前面的是右侧的字符串,剩余部分用第二个字符'-'填满
print('zhe'.zfill(50)) # 50是总长度,zfill前的字符放在最后面,前面填0填够总长度
print(s.expandtabs())
标签:字符,内置,name,字符串,zhe,移除,print,Day
From: https://www.cnblogs.com/chsun12/p/18434195