2024.3.24 二

本文介绍了Python中字符串的基本操作,如切片、连接、比较、大小写转换、计数、查找等,重点讲解了字符串格式化方法(占位符、f-string和format),以及如何处理前缀、元组和字典的嵌入。
摘要由CSDN通过智能技术生成

Python

字符串
一个字符串等于一个字符数组,0开始.(不同于c的是,也可以用-n到-1来逆向表示)

切片语法:str名+[N:M]从下标N到下标M-1的切片(左闭右开)
只输一个默认N,不写N默认开头,不写M默认到结尾

对字符串的运算
x+y把x和y连接起来,只能是两个字符串
x*n,把x复制n次
x in y,判断x是否是y子串,返回T或是F

对字符串操作
.lower() #把字母全部变为小写,返回字符串
.upper() #把字母全部变为大写,返回字符串
.count(str, beg=0, end=len(string)) #返回指定范围内出现的次数,默认范围是整个字符串
.find(str, beg=0, end=len(string)) #检测是否包含在指定范围内,返回第一次出现的下标,没有返回-1,默认范围也是整个字符串
.isalpha() #判断是不是全字母,特别的,中文字符也会被认为是字母
.split(‘’) #拆分字符串,通过指定分隔符对字符串进行切片,返回分割后的由字符串组成的列表
.replace(old,new,次数) #用new替换old,默认全部替换
.max() #返回对应ASCII码最大的
.min() #返回对应ASCII码最小的
.strip() #去除左右两边指定的字符,返回一个字符串

以下三种方法都是判断字符串是不是全是数字,区别只在数字的格式
bytes数字即为------------str1=b’1’
.isdigit() #判断是不是数字
True: Unicode数字,byte数字
False: 汉字数字,罗马数字
Error: 无

.isdecimal() #判断是不是十进制的数字
True: Unicode数字
False: 罗马数字,汉字数字
Error: byte数字

.isnumeric()
True: Unicode数字,汉字数字
False: 罗马数字
Error: byte数字
以上三个函数功能相同,判断是不是只有数字,一般情况下,没有汉字就用isdigit,有就用isnumeric

字符串前缀
什么是byte数字,其实就是bytes类型的数字
而bytes类型很好定义就是一种特殊的字符串,编码是不用Unicode编码而是用二进制数据表示形式

引出下一个知识点
字符串的前缀:
前加u #表示用unicode编码--------python3.x中全部默认unicode编码
前加r #表示原始字符串,即不把" \ "当作转义字符处理
前加b #表示为bytes类型的字符串
前加f #用来格式化字符串

三种格式化字符串方法
一.占位符
类似c
%d #十进制整数
%o #八进制
%x #十六进制
%s #字符串
%e #科学计数法
%.几f #浮点数控制位数

print ("我叫 %s 今年 %d 岁!" % ('小明', 10))

二.f-string
用 f 和花括号{}来控制匹配格式

w = {'name': 'Runoob', 'url': 'www.bilibili.com'}
a=10000
print(f'有{a}人用{w["url"]}')
# Output: '有10000人用www.bilibili.com'

三.format方法
用 0,1,2和format(x,y,z)控制输出
^, <, > 分别是居中、左对齐、右对齐,后面带宽度,小数点和正负号都算一个宽度

: 号后面带填充的字符,只能是一个字符,不指定则默认是用空格填充。

  • 表示在正数前显示 +,负数前显示 -;表示在正数前加空格

b、d、o、x 分别是二进制、十进制、八进制、十六进制。

'{:a>+10.2f}'.format(pi)
'aaaaa+3.14'
#填充字符 a 、右对齐符号 > 、输出数字带符号 + 、字符串的宽度 10 、保留2位小数 .2f

"{1} {0} {1}".format("hello", "world")  # 设置指定位置
'world hello world'

my_list = ['菜鸟教程', 'www.runoob.com']
print("网站名:{0[0]}, 地址 {0[1]}".format(my_list))  # "0" 是必须的

tuple1=("name","mh")
print("名字:{0},name:{1}".format(*tuple1))  # 使用*运算符解包元组

site = {"name": "菜鸟教程", "url": "www.runoob.com"}
print("网站名:{name}, 地址 {url}".format(**site))  # 使用**运算符解包字典
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值