# 查看数据类型 # 可以通过 type函数 查看指定数据类型 type('张三') # <class 'str'> # 可以使用 str() 内置函数将其他类型的数据转换为字符串 num = 42 result = str(num) print(result) # '42' pi = 3.14159 result = str(pi) print(result) # '3.14159' c = complex(2, 3) result = str(c) print(result) # '(2+3j)' # 字符串索引 my_string = "Hello World!" print(my_string[0]) # H print(my_string[6]) # W my_list = "12345" print(my_list[-1]) # 5 print(my_list[-3]) # 3 # 字符串切片 my_string = "Hello World" # 获取 'Hel' print(my_string[0:3]) # 获取 'lo W' print(my_string[3:7]) # 获取 'rld' print(my_string[-3:]) result0 = my_string[::-1] # 'dlroW olleH' result1 = my_string[::-2] # 'drWolH' result2 = my_string[-1:-3:-1] # 'dl' result3 = my_string[-1:2:-1] # 'dlroW ol' # count:查找指定元素在字符串中出现的次数 str1 = 'addfbcvfd' print(str1.count('d')) # 3 # index: 查找指定元素第一次出现的位置下标 - 找不到报错 str2 = 'qwert帅哈yuil哈哈' print(str2.index('哈')) # 6 print(str2.index('放')) # ValueError:substring not found(值错误:未找到子字符串) # find: 查找指定元素第一次出现的位置下标 - 找不到返回 (-1) str2 = 'qwert帅哈yuil哈哈' print(str2.find('哈')) # 6 print(str2.find('放')) # -1 # isdigit: 判断字符串是否由纯数字构成 str3 = '12345' str4 = '12345hasd' str5 = 'drthasd' print(str3.isdigit()) # True print(str4.isdigit()) # False print(str5.isdigit()) # False # isalpha: 判断字符串是否由纯字符构成 str3 = '12345' str4 = '12345hasd' str5 = 'drthasd' print(str3.isalpha()) # False print(str4.isalpha()) # False print(str5.isalpha()) # True # endswith: 判断字符串结束位置字符是否是指定字符 str6 = 'axiba' print(str6.endswith('ba')) # True print(str6.endswith('aa')) # False # startswith: 判断字符串开始位置字符是否是指定字符 str6 = 'axiba' print(str6.startswith('ax')) # True print(str6.endswith('aa')) # False # islower: 判断字符串中(英文字符)是否为纯小写 str7 = 'qqwee哈哈' str8 = 'qQwee哈哈' print(str7.islower()) # True print(str8.islower()) # False # isupper: 判断字符串中(英文字符)是否为纯大写 str7 = 'qqwee哈哈' str8 = 'qQwee哈哈' str9 = 'QWERT哈哈' print(str7.isupper()) # False print(str8.isupper()) # False print(str9.isupper()) # True # split: 切割字符串 str10 = 'hello world' data_1 = str10.split('o') print(data_1) # ['hell', ' w', 'rld'] # strip:去除字符串开头与结尾的空格 str12 = ' sdfg ' data_3 = str12.strip() print(data_3) # sdfg # lstrip:去除左边空格 str13 = ' shuai' print(len(str13)) # 原字符串长度:7 data_4 = str13.lstrip() print(len(data_4)) # 改变后字符串长度: 5 # rstrip:去除右边空格 str14 = 'shushu ' print(len(str14)) # 改变前字符串长度: 7 data_5 = str14.rstrip() print(len(data_5)) # 改变后字符串长度: 6 # upper: 小写改大写 str15 = 'qrtyQWE帅123' data_6 = str15.upper() print(data_6) # QRTYQWE帅123 # lower: 大写改小写 str16 = 'qrtyQWE帅123' data_7 = str16.lower() print(data_7) # qrtyqwe帅123 # capitalize: 字符串首字母大写 str17 = 'hello 帅hi english' data_8 = str17.capitalize() print(data_8) # Hello 帅hi english # title: 字符串里面单词首字母大写 str18 = 'hello 帅hi english' data_9 = str18.title() print(data_9) # Hello 帅Hi English # replace:替换 str19 = 'shuju真的很帅哈!学习的快乐 哈哈哈哈' data_10 = str19.replace('哈', '-') # shuju真的很帅-!学习的快乐 ---- # 拼接符: + str_1 = '你很' str_2 = '帅' splicing = str_1 + str_2 print(splicing) # 你很帅 # 占位符:%s str_3 = '18' # 有几个占位符就得传几个字符串进去 placeholder = '%s今年%s岁' % ('小明', str_3) print(placeholder) # 小明今年18岁 # join方法 str_4 = '帅' str_5 = '真的' str_6 = '他' join_merge = '-'.join([str_6, str_5, str_4]) print(join_merge) # 他-真的-帅 # format方法 str_4 = '帅吗?' str_5 = '真的' str_6 = '他' # 默认位置 1对1 format_merge_1 = '{}{}很{}'.format(str_6, str_5, str_4) print(format_merge_1) # 他真的很帅吗? # 1. %s 占位符 print('%s' % '帅') # 2. %r 显示原数据类型 print('%r' % '帅') # %d 整数 print('%d' % 1) # %f 浮点数 print('%f' % 2.1) # %c ASCII print('%c' % 65) # %o 8进制 print('%o' % 11) # %x 16进制 print('%x' % 11) # %e 科学计数法 print('%e' % 10.3) # -: 左对齐 6:这位置指定长度 3:这位置指定小数点后面保留多少位 print('%-6.3f' % 10.3) # 优先满足小数点后几位数 # +:显示正号 print('%+6.3f' % 10.3) # 优先满足小数点后几位数 # 格式化长度 print('%5s' % 'ab') # ab # 格式化长度 print('%5s' % 'ab') # ab # format扩展 # 保留小数点后两位 a1 = '{:.2f}'.format(12.333) print(a1) # 指定传入,保留小数点后两位 a2 = '{s:.2f}'.format(s=12.333) print(a2) # 百分比格式化 a3 = '{:.2%}'.format(0.333) print(a3) # 33.30% # 转十六进制 a4 = '{:x}'.format(20) print(a4) # 转八进制 a6 = '{:o}'.format(20) print(a6) # 左对齐,长度为10 a7 = '{a:<10}'.format(a=12.3, b=13.44) print(a7) # 传入数据长度不足,用x填充 a8 = '{a:x<10}'.format(a=12.3, b=13.44) print(a8) # 右对齐 a9 = '{a:>10}'.format(a=12.3, b=13.44) print(a9) # 两边对齐 a10 = '{a:^10}'.format(a=12.3, b=13.44) print(a10)
python字符串操作
最新推荐文章于 2024-07-12 19:06:42 发布