- 首先创建字符串可以使用单引号、双引号、三单引号和三双引号,其中三引号可以多行定义字符串,Python 不支持单字符类型,单字符在Python中也是作为一个字符串使用。
- 我们定义一个 变量 str = 'python' 语句,它在计算机中的执行顺序是先在内存中创建一个字符串 Python ,在程序栈寄存器中创建一个变量 str,最后把 Python 的地址赋给 str
字符串的常见操作
首先随机定义一个字符串用于后面描述字符串的功能
str = '学习Python'
【1】切片 [开始:结尾] 取左不取右
print(str[0]) # 学 print(str[-1]) # 从右往左只取一个字符:n print(str[-3:-1]) # 从右往左取,从倒数第三个字符取到倒数第一个字符:ho print(str[3:]) # ython """ 切片的定义: [起始下标 : 终止下标 : 步长] 取左不取右边,左闭右开 注意1 正数:从左往右 负数:从右往左 注意2 起始下标如果不写,默认从:0 开始;终止下标如果不写,默认取值是字符串的长度;步长如果不写,默认为 1 """ print("============================================================") print(str) print(str[:]) print(str[::]) print(str[0:]) print(str[0::1]) print(str[0:len(str)]) print(str[0:len(str):]) print(str[0:len(str):1]) # 切片 [开始:结尾:步长] 取左不取右 print(str[::2]) # 学Pto print(str[::1]) # 学习Python
【2】字符串替换
newStr = str.replace('Python', 'Java') print(newStr) # 学习Java
【3】字符串查找,find()、index()、rfind()、rindex()
print(str.find('P')) # 返回第一次出现的子串的下标:2 print(str.find('h', 2)) # 设定下标2开始查找:5 print(str.find('23333')) # 查找不到返回-1 print(str.index('y')) # 返回第一次出现的子串的下标:3 print(str.index('P')) # 不同与find(), 查找不到会抛出异常
【4】字符串转大小写, upper()、lower()、swapcase()、capitalize()、istitle()、isupper()、islower()
print(str.upper()) # '学习PYTHON' print(str.swapcase()) # '学习pYTHON', 大小写互换 print(str.istitle()) # 标题是大小写字符串:True print("学习python".istitle()) # False print(str.islower()) # False
【5】字符串去空格,strip()、lstrip()、rstrip()
str2 = " 学习Python " print(str2.strip()) print(str2.lstrip()) print(str2.lstrip())
【6】字符串格式化
print("%s,%s" % ("帅帅", 21)) # '帅帅,21' print("{},{}".format("帅帅", 21,)) # 推荐使用format格式化字符串 print('{name},{age}'.format(age=21, name='帅帅')) # 根据属性名称进行匹配输出
【7】字符串连接与分割,使用 + 连接字符串,每次操作会重新计算、开辟、释放内存,效率很低,所以推荐使用join
l = ['2023', '11', '18', '22:00:00'] str3 = '-'.join(l) # 2023-11-18-22:00:00 print(str3) print(str3.split('-')) # ['2023', '11', '18', '22:00:00']
【8】关于字符串的一些共同操作 len() max() min()
str = "12345abcaBC" print(len(str)) # 12 print(max(str)) # c print(min(str)) # 1 print(str.count("a")) # 2
标签:00,下标,Python,print,str,字符串 From: https://www.cnblogs.com/michael-study/p/18030500