一、字符串的定义

字符串是就一堆字符,可以使用""(双引号)、‘’(单引号)来创建。

1 one_str = "定义字符串"

字符串内容中包含引号时,可以使用转义字符:/'、/"。

二、字符串的常见操作

1.索引的定义

1 #使用索引打印y
2 one_str = "My name is apple!"
3 print(one_str[1])

2.字符串的切片

object[start_index:end_index:step]

start_index:

    • 起始索引;
    • 包含本身;
    • 省略时,表示从对象“端点”开始取值;

end_index:

    • 结束索引
    • 不包含本身
    • 省略时,表示取到对象的“端点”

step:

    • 步长,可正可负
    • 正数:从左向右取
    • 负数:从右向左取

1 one_str = "字符串的切片操作示例"
2 print(one_str[::]) # 三个参数都可以省略。省略时,默认从起始正向打印至结束,步长为1
3 print(one_str[::1]) # 正向打印 默认步长1的时候,:1可以省略
4 print(one_str[::-1]) # 反向打印
5 print(one_str[1:4]) # 左闭右开的原则
6 print(one_str[::2]) # 正向,步长为3打印,即一个间隔一个地打印
7 print(one_str[::-2]) # 反向,步长为3打印
8 print(one_str[2:-2:2]) # 可以正向索引、反向索引结合使用

上面代码执行结果:

字符串的切片操作示例
字符串的切片操作示例
例示作操片切的串符字
符串的
字串切操示
例作片的符
串切操

切片的组合是花式多样的,只要符合切片的规则,这里不一一列举了。

切片适用于:字符串、列表、元祖等序列类型

3、字符串的内置方法

3.1判断类型

方法          什么情况下是TRUE
one_str.isalnum() # 字符串全部为字母或者数字
one_str.isdigit() # 字符串全部为数字
one_str.isalpha() # 字符串全部为字母

one_str.isspace() # 只包含空格

one_str.isupper() # 全部为大写
one_str.islower() # 全部为小写
one_str.istitle() # 每个单词首字母都是大写

3.2查找替换

one_str.startswith(str)     #判断是否以str开始
one_str.endswith(str) #判断是否以str结尾
one_str.find(str,start,end) # 从start至end范围内,是否存在str,存在返回索引,不存在返回-1
one_str.index(str,start,end)
one_str.replace(old_str,new_str,num) # 讲字符串中的old_str换成new_str,若num指定,则表示替换num次
1 one_str = "It's a beautiful day,isn't it?1234567"
2 print(one_str.startswith("It's"))
3 print(one_str.endswith("67"))
4 print(one_str.find("day", 0, len(one_str)))
5 print(one_str.rfind("456", 0, len(one_str))) # 与find类似,但是从右向左查询
6 print(one_str.find("happy", 0, len(one_str))) # 不存在的情况下,报-1
7 print(one_str.index("day", 0, len(one_str))) # 与find类似,但不存在的情况下,报错
8 print(one_str.index("day", 0, len(one_str))) # 与index类似,但是从右向左查询
9 print(one_str.replace("beautiful", "nice", 1))

结果:

True
True
17
33
-1
17
17
It's a nice day,isn't it?1234567

3.3大小写替换

one_str.lower()     # 转化为小写
one_str.upper() # 转化为大写
one_str.title() # 每个单词首字母大写
one_str.capitalize() # 字符串首字母大写
one_str.swapcase() # 翻转大小写
1 one_str = "it's a beautiful DAY,isn't it?"
2 print(one_str.lower())
3 print(one_str.upper())
4 print(one_str.title())
5 print(one_str.capitalize())
6 print(one_str.swapcase())

结果:

it's a beautiful day,isn't it?
IT'S A BEAUTIFUL DAY,ISN'T IT?
It'S A Beautiful Day,Isn'T It?
It's a beautiful day,isn't it?
IT'S A BEAUTIFUL day,ISN'T IT?

3.4文本对齐

3.5去除空白字符

  删除左侧、右侧、两侧的空白字符

1 one_str = "   Python*字*符*串*操*作练习*!!   *示例  "
2 print(one_str.lstrip())
3 print(one_str.rstrip())
4 print(one_str.strip())

结果:

Python*字*符*串*操*作练习*!!   *示例
Python*字*符*串*操*作练习*!! *示例
Python*字*符*串*操*作练习*!! *示例

3.6拆分和连接

one_str.partition(str)      # 返回类型为【元祖】。以&作为分隔,将字符串分为:str左侧,str,str右侧三部分
one_str.rpartition(str) # 与partition类似,但是从右侧查找str,并切分
1 one_str = "好好学习, 天天向上&Python初学笔记&字符串&列表"
2 print(one_str.partition("&"))
3 print(one_str.rpartition("&"))

结果:

('好好学习, 天天向上', '&', 'Python初学笔记&字符串&列表')
('好好学习, 天天向上&Python初学笔记&字符串', '&', '列表')
one_str.split(str,num)        # 以str为标志进行切分,切分结果为【list】类型。如果定义了num,则代表切分num次
one_str = "好好学习, 天天向上&Python初学笔记&字符串&列表"
print(one_str.split("&",1))
print(one_str.split("&",2))
print(one_str.split("&"))

结果:

['好好学习, 天天向上', 'Python初学笔记&字符串&列表']
['好好学习, 天天向上', 'Python初学笔记', '字符串&列表']
['好好学习, 天天向上', 'Python初学笔记', '字符串', '列表']
str.join(one_list)      # 以str连接one_list的所有元素
1 one_str = "好好学习&天天向上&Python初学笔记&字符串&列表"
2 one_list = one_str.split("&")
3 print(one_list)
4 print("+++".join(one_list))

结果:

['好好学习', '天天向上', 'Python初学笔记', '字符串', '列表']
好好学习+++天天向上+++Python初学笔记+++字符串+++列表

Python初学笔记之字符串的更多相关文章

  1. python 初学笔记 (一)

    初学python第一天,希望自己真正了解计算机语言,并且做出成效. 写下学习笔记,记录学习进度,娱乐学习,不断成长. python详细介绍: python是什么?运用到哪里?有哪些在使用它? pyth ...

  2. Python 初学笔记(转)

    >>> print "isn't that grand"isn't that grand #不需要转义的#为了让文字符扩展到多行,可以在一行的末尾使用反斜线符号, ...

  3. python初学笔记(二)

    注释: 任何时候,我们都可以给程序加上注释.注释是用来说明代码的,给自己或别人看,而程序运行的时候,Python解释器会直接忽略掉注释,所以,有没有注释不影响程序的执行结果,但是影响到别人能不能看懂你 ...

  4. Python自学笔记之字符串的操作

    1.将字符串全部变为小写:lower() casefold() 范围更广 2.将字符串全部变为大写:upper() 3.判断是否大小写:isupper() islower() 4.居中:center( ...

  5. python学习笔记(字符串操作、字典操作、三级菜单实例)

    字符串操作 name = "alex" print(name.capitalize()) #首字母大写 name = "my name is alex" pri ...

  6. Python初学笔记

    一.安装:直接通过软件管理程序,搜索Python,安装:安装过程中自定义路径,有个选项类似“add Python3.5 to Path”,勾选后便可以在cmd命令窗口,通过输入Python,启动Pyt ...

  7. Python学习笔记3—字符串

    原始字符串 使用\转义或者r,这种方法在网站设置网站目录结构的时候非常管用. >>> dos="c:\news" >>> print dos c ...

  8. 【Python学习笔记】字符串操作

    字符串的表示 python中的字符串是一个常量,可以使用单引号'',双引号""或三引号""" """来创建一个字符串常量 ...

  9. python初学笔记(三)

    Unicode字符串 字符串还有一个编码问题. 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用8个比特(bit)作为一个字节 (byte),所以,一 ...

随机推荐

  1. HDC2021技术分论坛:“积木拼装”,HarmonyOS弹性部署大揭秘!

    作者:peitaiyi,华为终端OS产品交付专家 HarmonyOS是一款面向万物互联时代的.全新的分布式操作系统.在传统的单设备系统能力基础上,HarmonyOS提出了基于同一套系统能力.适配多种终 ...

  2. 精通 MySQL 索引

    索引概念: 概念:索引是提高mysql查询效率的数据结构.总的一句话概括就是索引是一种提高查询效率的数据结构. 数据库查询是数据库的最主要功能之一.设计者们都希望查询数据的速度能尽可能的快,因此数据库 ...

  3. 团队编程二——web应用之人事管理系统

    该项目是B-S模式的web应用,以下是团队各成员的Coding链接: ------Aaric---https://coding.net/u/Aaric/p/Personnel_management_s ...

  4. Entropy, relative entropy and mutual information

    目录 Entropy Joint Entropy Conditional Entropy Chain rule Mutual Information Relative Entropy Chain Ru ...

  5. CS5210完全替代AG6202|HDMI转VGA不带音频输出的芯片+原理图|替代兼容AG6202

    CS5210完全替代AG6202|HDMI转VGA不带音频输出的芯片+原理图|替代兼容AG6202 安格AG6202是一个HDMI转VGA不带音频解决方案,用于实现HDMI1.4高分辨率视频转VGA转 ...

  6. 【算法】01-数据结构概述(注意区分jvm堆与堆/jvm栈与栈)

    [算法]01-数据结构概述(注意区分jvm堆与堆/jvm栈与栈) 欢迎关注b站账号/公众号[六边形战士夏宁],一个要把各项指标拉满的男人.该文章已在github目录收录. 屏幕前的大帅比和大漂亮如果有 ...

  7. SpringBoot集成MyBatis-Plus框架

    1.说明 本文介绍Spring Boot集成MyBatis-Plus框架, 重点介绍需要注意的地方, 是SpringBoot集成MyBatis-Plus框架详细方法 这篇文章的脱水版, 主要是三个步骤 ...

  8. 关于PaddleSharp GPU使用 常见问题记录

    在安装NVIDIA驱动过程中遇到一系列问题,记录如下! 附上PaddleSharp地址,大家喜欢可以关注 根据PaddleSharp官方说明需要安装驱动如下 CUDA 和 cuDNN 和 Tensor ...

  9. LCA/在线(倍增)离线(Tarjan)

    概念 祖先 公共祖先 最近公共祖先 方法1:暴力爬山法 方法2:倍增 求公共祖先 求俩点的距离 Tarjan 概念 祖先 有根树中,一个节点到根的路径上的所有节点被视为这个点的祖先,包括根和它本身 公 ...

  10. android 报错 net::ERR_CLEARTEXT_NOT_PERMITTED

    这是从27版本后不允许使用http方式来请求 ,需要使用https 解决办法: 加入一个开关即可 android:usesCleartextTraffic="true"