Python 数据类型:字符串
一、字符串介绍
字符串是由单引号/双引号/三引号引起来的,由字母 、数字或符号等构成的一串字符
In [1]: name = "Tom" # 定义字符串 In [2]: type(name) # 字符串的英文缩写为str
Out[2]: str
单引号 、双引号 、三引号的区别:
1. 在 python 中,单引号与双引号没什么区别,三个单引号和三个双引号也没什么区别,效果是一样的,都可以定义一个字符串
2. 单引号或双引号定义换行时,需要使用 " \n " 来实现,而三引号则可以直接回车来换行,这是三引号的不同之处
3. 三引号除了能换行定义字符串之外,还能用作多行注释,在 python 程序中,"#" 只能注释单行,而三引号则可以注释多行
4. 如下例子中,用四种方法定义的字符串,结果都是一样的
In [1]: info = 'My name is Tom.\nI like reading.' # 用单引号定义字符串 In [2]: info = "My name is Tom.\nI like reading." # 用双引号定义字符串 In [3]: info = '''My name is Tom. # 用三个单引号定义字符串
...: I like reading.''' In [4]: info = """My name is Tom. # 用三个双引号定义字符串
...: I like reading."""
二、字符串索引
1. 在 python 中,字符串中的字符是通过索引来提取的,索引从 0 开始
2. 如果是正向索引( 从左到右 ),则索引值从 0 开始,如 "hello" 这个字符串,每个元素的索引值分别为 0 1 2 3 4
3. 如果是逆向索引( 从右到左 ),则索引值从 -1 开始,如 hello" 这个字符串,每个元素的索引值分别为 -5 -4 -3 -2 -1
In [1]: str = "hello" # 定义一个字符串
In [2]: str[0] # 取索引值为0的字符,也就是取第一个元素,结果为:h
In [3]: str[2] # 取索引值为2的字符,也就是取第三个元素,结果为:l
In [4]: str[-1] # 取索引值为-1的字符,也就是取倒数第一个元素,结果为:o
In [5]: str[-3] # 取索引值为-3的字符,也就是取倒数第三个元素,结果为:l
三、字符串切片
1. 切片也就是从一个字符串中截取其中的某一段字符,比如 "my name is Tom" 是一个字符串,我截取 "Tom" 出来就表示字符串的切片
2. 切片可以用 " string[0:5] " 这种形式来表示,其中 0 表示起始索引,5 表示结果索引,也就是截取索引值从 0 到 5 这段字符,注意不包括索引值为5的字符
3. 如果不写起始索引,则默认是从 0 开始,如 string[:5] ;如果不写结束索引,则默认取到最后一个索引值 ( -1 ) ,如 string[1:]
4. 切片还可以加步长,如 string[0:10:2] 中的2就表示步长,即每隔两个数取一次
In [1]: str = "abcdefg" # 定义一个字符串
In [2]: str[0:5] # 取索引值为0到5之间的元素,不包括索引值为5的元素,结果为:abcde
In [3]: str[:5] # 如果不写起始索引,则默认的起始索引为0,结果为:abcde
In [6]: str[5:] # 如果不写结束索引,则默认取到最后一个值,结果为:fg
In [7]: str[0:5:2] # 取索引值为0到5之间的元素,且每隔两个数取一次,结果为:ace
In [8]: str[::2] # 两个冒号表示取所有的元素,2表示每隔两个数取一次,结果为:aceg
In [9]: str[-4:-1] # 取索引值为-4到-1之间的元素,不包括索引值为-1的元素,结果为:def
四、字符串的方法
lower() :用于把字符串中的大写字母转换成小写字母,如 str = "Hello World" ,则 str.lower() 结果为 "hello world"
upper() :用于把字符串中的小写字母转换成大写字母,如 str = "Hello World" ,则 str.upper() 结果为 "HELLO WORLD"
startswith() :用于判断字符串是否以指定的字符开头,如果是则返回True,否则返回False,如 str = "Hello World",则 str.startswith("He") 结果为 True
split() :通过指定分隔符对字符串进行切片,结果返回一个列表,默认是以空格或换行来分割,如 str = "Hello World",则 str.split() 结果为 ['Hello', 'World'],详细用法
join() :用于将序列中的元素以指定的字符连接生成一个新的字符串,如 '-'.join('abc') 结果为 'a-b-c',如 ':'.join(['a', 'b', 'c']) 结果为 'a:b:c'
isdigit() :用于判断该字符串是否是纯数字的字符串,如果是返回True,否则返回False,如 str = "123",则 str.isdigit() 结果为 True
capitalize():用于把字符串的首字母转换成大写,如 str = "hello world",则 str.capitalize() 结果为 'Hello world'
replace():用于替换指定的字符串,如 str = "hello world",则 str.replace('l', 'L') 表示把 'l' 替换成 'L',结果为 'heLLo worLd'
count():用于统计指定的字符在字符串中出现的次数,如 str = "hello world" ,则 str.count('l') 结果为3
strip():用于删除字符串开头和结尾的空格或换行符,如 str = " hello world ",则 str.strip() 结果为 "hello world"
lstrip():用于删除字符串开头的空格或换行符,如 str = " hello world ",则 str.lstrip() 结果为 "hello world "
rstrip():用于删除字符串结尾的空格或换行符,如 str = " hello world ",则 str.rstrip() 结果为 " hello world"
Python 数据类型:字符串的更多相关文章
- 6 Python 数据类型—字符串
字符串是 Python 中最常用的数据类型.我们可以使用引号('或")来创建字符串. 创建字符串很简单,只要为变量分配一个值即可. var1 = 'Hello World!' var2 = ...
- python 数据类型-字符串-对象和方法
python的字符串有众多方法,可以在doc文档中查看 示例 转换开头字母为大写 c1="welcome to my python" >>> c1.capital ...
- Python数据类型——字符串
概论 字符串顾名思义就是一串字符,由于Python中没有“字符”这种数据类型,所以单个的字符也依然是字符串类型的.字符串可以包含一切数据,无论是能从键盘上找到的,还是你根本都不认识的.与数一样,字符串 ...
- python数据类型-----字符串
今天来总结下python3.4版本字符串的一些操作方法,对这些方法先作一个简单的分类,按照分类来进行总结. Sequence Typessequence类型有六种:strings, byte sequ ...
- python数据类型——字符串类型
字符串(string) 字符串,就是字符连成一串,是由字符组成的序列.字符串有编码问题,在之前我已经讲过.本节主要讲字符串的使用. 创建字符串,不用多说: a='123abcd' b='diamond ...
- python 数据类型 ---字符串
1. 字符串去除空白 ,strip() , 包括空格,tab键, 换行符 >>> name = " Frank " >>> name.strip ...
- python 数据类型---布尔型& 字符串
python数据类型-----布尔型 真或假=>1或0 >>> 1==True True >>> 0==False True python 数据类型----- ...
- python基础【2】——python数据类型之字符串
python数据类型-字符串 一. 字符串的表示方法(str) 作用: 记录文本信息 表示方法:' ' 单引号 " "双引号 ''' '''三单引号 ""&qu ...
- python 数据类型(元组(不可变列表),字符串
元组(不可变列表) 创建元组: ages = (11, 22, 33, 44, 55) 或 ages = tuple((11, 22, 33, 44, 55)) 一般情况下是不需要被人该的数值才使用元 ...
- python基础之数据类型/字符串/元组/列表/字典
Python 数据类型 数字类型: int整型,long 长整型(在python3.0里不区分整型和长整型).float浮点型:complex复数(python中存在小数字池:-5--257):布尔值 ...
随机推荐
- gvim配置到命令行可以使用
下载安装gvim后,把gvim的安装目录添加到环境变量.
- 【转】【C#】实现依赖注入
1. 问题的提出 开发中,尤其是大型项目的开发中,为了降低模块间.类间的耦合关系,比较提倡基于接口开发,但在实现中也必须面临最终是“谁”提供实体类的问题.Martin Fowler在<Inver ...
- mount -t nfs 不能使用
去年使用一个新的文件系统的时候,发现mount -t nfs ip:/g/ftp ~/mnt -o tcp,nolock 不能使用 一直以为是因为mount 命令更新了,有些用法我不会用,但是刚才发现 ...
- spring4.1.6配置quartz2.2.1(maven) <转>
Spring3.0不支持Quartz2.0,因为org.quartz.CronTrigger在2.0从class变成了一个interface造成IncompatibleClassChangeError ...
- iOS彩票项目--第五天,新特性引导页的封装、返回按钮的自定义、导航控制器的滑动返回以及自定义滑动返回功能
一.上次实现了在AppDelegate中通过判断app版本决定是否进入新特性页面,今天将AppDelegate中的一坨进行了封装.将self.window的根控制器到底应该为新特性界面,还是主页面,封 ...
- SQL Server查询某个字段存在哪些表中
一.查询SQL Server中所有的表 SQL语句:SELECT * FROM sys.tables name列表示所有的表名. 二.查询SQL Server中所有的列 SQL语句:SELECT * ...
- delete指针以后应赋值为NULL——QT deletelater指针以后也同样要马上赋值为NULL
delete p后,只是释放了指针指向的内存空间.p并不会自动被置为NULL,而且指针还在,同时还指向了之前的地址 delete NULL编译器不会报错(因为delete空指针是合法的) 例: 对一个 ...
- 第二百八十八节,MySQL数据库-索引、limit分页、执行计划、慢日志查询
MySQL数据库-索引.limit分页.执行计划.慢日志查询 索引,是数据库中专门用于帮助用户快速查询数据的一种数据结构.类似于字典中的目录,查找字典内容时可以根据目录查找到数据的存放位置,然后直接获 ...
- mysql命令行远程登录命令
mysql -u root -psalon365365 -h 192.168.1.103 -P 3 306 -D empirecms
- CentOS下screen 命令详解
一.背景 系统管理员经常需要SSH 或者telent 远程登录到Linux 服务器,经常运行一些需要很长时间才能完成的任务,比如系统备份.ftp 传输等等.通常情况下我们都是为每一个这样的任务开一个远 ...