本章是关于python中字符串的一些常见知识整理。
1、三个不同引号之间的区别
s_1=‘我的家‘‘在‘‘北京。‘ #单引号中只能嵌套双引号
s_2=‘‘外号叫‘宋宋‘或泡沫。‘‘ #双引号中只能嵌套单引号
s_3=‘‘‘今年18岁了!‘‘‘ #三引号中可以随便嵌套
2、 字符串常见操作1:
# 空字符串:s=‘‘
# 字符串拼接:+ print(s_1+s_2) 输出:我的家‘‘在‘‘北京。外号叫‘宋宋‘或泡沫。
# 字符串输出:, print(s_1,s_2) 输出:我的家‘‘在‘‘北京。 外号叫‘宋宋‘或泡沫。-----两者之前有空格
# 1、反斜杠\不是换行,是拼接
line="第一行"\
"第二行"
print(line)
# 2、换行方式一:三引号直接可以换行
line=‘‘‘第一行
第二行
‘‘‘
print(line)
# 3、换行方式二:换行符 \n
line=‘第一行\n第二行‘
print("3、换行符应用:{}".format(line))
# 4、水平制表符\t 即4个空格相当于tab键
line=‘第一行\t第二行‘
print("4、水平制表符应用:{}".format(line))
# 5、将特殊字符转换成普通字符,字符串前加r R 或者特殊字符前加反斜杠\
line1=r‘第一行\t第二行‘
line2=‘第一行\\n第二行‘
print("5、转成普通字符1:{}".format(line1))
print("5、转成普通字符2:{}".format(line2))
# 常用场景:windows系统下路径有反斜杠,输出时需要将路径中的反斜杠转成普通字符。比如 r‘c:\www.baidu.com\‘
c=r‘c:\www.baidu.com\a\b‘
print(c)
3、字符串的常见操作2
# 1、索引:方便精准定位到某个具体位置
# 2、索引取一个值:变量名[索引值],超出索引值范围会报错
# 3、索引值正序从0开始,倒序从-1开始
name=‘你好,30岁!‘
# 输出 好
print(name[1])
# 输出 0
print(name[-3])
4、字符串的切片
定义:获取字符串的某个字符,一个字符或者多个字符。
# 1、字符串[start:end] 取头不取尾
a=‘hello world!‘
# 输出ell(索引值 1 2 3 )
print(a[1:4])
# 输出:world!(索引值 6 7 8 9 10 11 )
print(a[6:])
print(a[6:12])
# 2、字符串[start:end:step] 取头不取尾 步长
# 倒序输出
print(a[::-1])
# 最后的两个字符
print(a[-2:])
5、字符串常见方法
# 1、获取字符串长度len()
# 2、split()分割存在列表中
name=‘nihao_haode‘
# spilit()用_分割这一个整字符串为两个
print(name.split(‘_‘))
# 3、join()把一个列表拼接成字符串
pwd=[‘宋宋‘,‘123456‘]
new_pwd=‘_‘.join(pwd)
print(new_pwd)
# 4、find()/index()找到某个字符,返回索引值:判断一个字符串中是否有某个子字符串
print(name.find(‘de‘))
# find如果找不到,输出-1;index找不到的话会报错
print(name.find(‘ee‘))
# 5、replace()替换
print(name.replace(‘nihao‘,‘hello‘))
# 6、strip()左右两边空格去掉
bb=‘ oop ‘
print(bb.strip())
# 7、format()格式化输出
# 8、(f‘‘)格式化输出(python3.6后才可以用) --推荐使用这个
name=‘宋宋‘
age=‘18‘
print("我的名字叫{},我今年{}岁".format(name,age))
print(f"我的名字叫{name},我今年{age}岁")
练习题:
1、 第一题:
# 现在有字符串:str1 = ‘python cainiao 666‘
str1 = ‘python cainiao 666‘
# 请使用代码找出第 5 个字符
print(str1[4])
# 请复制一份字符串,保存为 str_two
str_two=‘‘.join(str1)
print(str_two)
2、第二题:
# 卖橘子的计算器:写一段代码,提示用户输入橘子的价格,和重量,最后计算出应该支付的金额!不需要校验数据,都传入数字就可以了。
# 使用input函数获取用户输入哦,并且input 得到的数据都是字符串类型
price=input("请输入橘子的价格:")
weight=input("请输入橘子的重量:")
total=int(price)*int(weight)
# print(total)
# print("最终需要支付金额为:{}".format(total))
print(f"最终需要支付金额为:{total}")
3、第三题: 演练字符串操作 my_hobby = "Never stop learning!"
# 说明:“位置”指的是字符所处的位置(比如位置1,指的是第一个字符“N”);“索引”指的是字符的索引值(比如索引0, 代表的是第一个字符“N”);开始位置 ,是指字符串起始,即下标为0开始;末尾,是指字符串最后。
my_hobby = "Never stop learning!"
# 截取从 位置2 ~ 位置6 的字符串(含 位置6)
print(my_hobby[1:6])
# # 截取完整的字符串
print(my_hobby[:])
# print(my_hobby[0:])
# # 从 索引3 开始,每2个字符中取一个字符
print(my_hobby[3::2])
# # 截取字符串末尾两个字符
print(my_hobby[-2:])
# # 字符串的倒序
print(my_hobby[::-1])
# print(my_hobby[-1::-1])
4、 第四题:将字符串中的单词位置反转,“hello xiao mi” 转换为 “mi xiao hello” (提示:通过字符串分割,拼接,列表反序等知识点来实现)
cc=‘hello xiao mi‘
cc1=cc.split(‘ ‘)
# print(cc1)
new_cc1=‘ ‘.join(cc1[::-1])
print(new_cc1)
5、第五题:把姓名、年龄、密码、性别、专业、爱好分别存储在变量中,用下列格式展示:
# -------------------------------
# 姓名:xxx
# 年龄:xxx
# 密码:xxx
# 性别:xxx
# 专业:xxx
# 爱好:xxx
# -------------------------------
name=‘宋宋‘
age=‘18岁‘
pwd=‘666666‘
sex=‘女‘
speciality=‘计算机‘
hobby=‘看书‘
print(‘-‘*20)
print(f‘姓名:{name}\n年龄:{age}\n密码:{pwd}\n性别:{sex}\n专业:{speciality}\n爱好:{hobby}‘)
print(‘-‘*20)
原文:https://www.cnblogs.com/linsongsong/p/14713576.html