Python基础学习 --- 数据类型之字符串
2020-07-28 10:24
337 查看
字符串
字符串定义
字符串,关键字:str
字符串的定义很简单,成对的单引号、双引号和三引号括起的内容都是字符串。
a = 'hello' b = "hi" c = """666""" d = "0.03" print(type(a)) print(type(b)) print(type(c)) print(type(d))
输出结果:
字符串长度统计
字符串里的元素:单个字母、数字、汉字、单个符号等都称之为一个元素。
len():统计数据的长度。
s = 'hello!' print(len(s))
输出结果:
字符串取值
- 单个取值: 字符串名[索引值]
索引:正序是从0开始标记;反序是从-1开始标记(-1,-2,-3,-4…)
s = 'hello!' print(s[5]) print(s[-1])
输出结果:
- 多个取值(切片):字符串名[索引头:索引尾:步长]
步长默认为1,注意切片取头不取尾
s = 'hello!' print(s[1:5:1]) # ello print(s[1:5]) # ello print(s[1:5:2]) # 1,3 el print(s[2:4:2]) # 2 l
输出结果:
字符串多个取值时,还可以省略索引头、索引尾;
print(s[:]) #代表从正无穷取到负无穷 即全取 hello! print(s[:4]) #代表从0开始 0,1,2,3 hell print(s[3:]) # 代表从3开始,取到最后 lo!
输出结果:
- 练习:s = ‘hello!’ 请利用切片,倒叙输出s的值,输出结果为!olleh。
此题很简单,大家很容易就会想到索引头为-1,索引尾为-7,但会忽略步长,会下意识的认为,步长为1,可以忽略,所以就直接省略,但在控制台是打印不出内容的。
但其实此题的步长是-1,不可省略。
s = 'hello!' print(s[-1:-7:-1]) # 步长为-1,如果是1的话不会有输出 print(s[::-1])
输出结果:
字符串分割 split()方法
用法:
字符串.split(可以指定切割符,切割次数)
split方法有两个参数,sep和maxsplit,分别代表分隔符和切割次数,如果指定切割次数为n,那么将会分割成n+1份;函数返回值是一个包含了字符串的列表。如果为指定sep,或者它的值为None,则任何空白的字符串都是分隔符,空的字符串也会从结果中删除。
返回的数据是列表类型,列表里的子元素是字符串,指定的切割符消失不见。
d = ' hello' print(d.split()) #没有任何参数 代表消除所有空格、换行符、制表符等。 print(d.split(" ")) # [' ', 'hello'] print(d.split("e")) # [' h', 'llo'] print(d.split("l",1))# [' he', 'lo'] print(d.split("l",2))#[' he', '', 'o']
输出结果:
该方法最初使用时,还是懵懂的状态,所以在这多放些示例:
e = 'U Jiu Ye' print(e.split()) #输出结果:['U', 'Jiu', 'Ye'] f = 'U, Jiu, Ye' print(f.split()) #输出结果:['U,', 'Jiu,', 'Ye'] g = 'U, Jiu, Ye' print(g.split(',')) #输出结果:['U', ' Jiu', ' Ye'] h = 'I love Python and ujiuye' print(h.split()) #输出结果:['I', 'love', 'Python', 'and', 'ujiuye'] print(h.split(maxsplit=3)) #输出结果:['I', 'love', 'Python', 'and ujiuye'] print(h.split(maxsplit=2)) #输出结果:['I', 'love', 'Python and ujiuye'] i = 'I-love-Python-and-ujiuye' print(i.split('-',2))# 使'-'作为分隔符,最多分为3份 输出结果:['I', 'love', 'Python-and-ujiuye']
字符串替换 replace()方法
用法: 字符串.replace(指定替换值,新值,替换次数)
示例:
e = 'hello' new = e.replace('l','@',2) print(new)
输出结果:
字符串去除指定字符 strip()方法
用法: 字符串.strip(指定字符)
1. 默认去掉空格。2. 只能去掉头和尾的指定字符
s = ' hello!' print(len(s)) #7 new = s.strip() #默认去掉空格 print(new) new1 = s.strip("!") print(new1)
输出结果:
字符串find()函数
用法: 寻找字符串里的子字符、子字符串,如果找到的话,返回索引;若未找到,返回-1。
s = 'hello' print(s.find('o')) print(s.find('m'))
输出结果:
字符串的拼接
用法:字符串的拼接可以用加号+实现,但必须保证加号两边的变量类型一致
s_1 = "python," s_2 = "中秋节快乐!" s_3 = 666 #整数 print(s_1+s_2+str(666)) #str(数字):可以将数字强制转换成str类型
输出结果:
字符串的格式化输出
- 格式一:format
用法:用{}来占位,{里可以添加索引来指定顺序} - 格式二:%
用法:%s代表字符串、%d代表数字、%f代表浮点数 - 第三种:字符串拼接
给出变量
age = 18
name = '奥利奥’
输出:高三一班的奥利奥今年18岁!
print('高三一班的'+name+'今年'+str(age)+'岁!') print('高三一班的{0}今年{1}岁!'.format(name,age)) print('高三一班的%s今年%d岁!'%(name,age))
输出结果:
对了,上述关于字符串split()方法的部分示例取自于https://baijiahao.baidu.com/s?id=1636759352252377931&wfr=spider&for=pc
The End !
相关文章推荐
- Python学习笔记(一)--Python基础知识:变量、数据类型、模块与字符串
- Python3学习(一)-基础、数据类型、变量、字符串和编码、list&tuple、if、for、while、dict、set、函数与参数
- Python基础学习----数据类型,字符串,内置数据结构
- Python新手学习基础之数据类型——字符串的切片截取
- Python新手学习基础之数据类型——字符串类型
- Python新手学习基础之数据类型——字符串的切片截取
- Python新手学习基础之数据类型——字符串类型
- Python新手学习基础之数据类型——字符串的切片截取
- Python新手学习基础之数据类型——字符串类型
- 王亟亟的Python学习之路(三)-基础语法以及基本数据类型
- 小甲鱼:Python学习笔记001_变量_分支_数据类型_运算符等基础
- 第2章 Python基础-字符编码&数据类型 字符编码&字符串 练习题
- 零基础入门学习Python(3):数据类型
- python基础学习(二):数据类型
- python基础学习(4)—数据类型
- Python学习入门基础教程(learning Python)--6 Python下的list数据类型
- Python教程学习简记1--Python数据类型和变量 字符串和编码 list和tuple 条件判断 循环 dict和set
- Python新手学习基础之数据类型——数字类型
- python基础学习-集合数据类型
- 去除字符串重复数据 分类: python基础学习 2013-08-08 17:44 335人阅读 评论(0) 收藏