一、字符串的定义

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

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. 【LeetCode】241. Different Ways to Add Parentheses 解题报告(Python & C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 方法一:递归构建所有表达式 方法二:分而治之 日期 ...

  2. Codeforces 567D:One-Dimensional Battle Ships(二分)

    time limit per test : 1 second memory limit per test : 256 megabytes input : standard input output : ...

  3. 洛谷 P1439 【模板】最长公共子序列(DP,LIS?)

    题目描述 给出1-n的两个排列P1和P2,求它们的最长公共子序列. 输入输出格式 输入格式: 第一行是一个数n, 接下来两行,每行为n个数,为自然数1-n的一个排列. 输出格式: 一个数,即最长公共子 ...

  4. [opencv]膨胀腐蚀

    Mat dilateimg; Mat element = getStructuringElement(MORPH_RECT, Size(3, 3)); dilate(canny, dilateimg, ...

  5. 决策树之PEP(悲观剪枝)

    引用这2篇文章 https://blog.csdn.net/taoqick/article/details/72818496 https://www.open-open.com/lib/view/op ...

  6. Windows10中同时安装MySQL5和MySQL8

    Windows10中同时安装MySQL5和MySQL8 同时安装的话,在执行mysql install要注意加名字,比如:mysqld --install MYSQL5 MySQL-5.5.54 ZI ...

  7. PPT变为gif效果

    原文链接:https://www.toutiao.com/i6496812863263343117/ 首先我们点击"文件按钮" 在下拉列表中选择"另存为" 在& ...

  8. LINUX学习--nginx服务器的安装

    一.安装环境 操作系统CentOS6.8 关闭SeLinux和iptables防火墙 二.网络yum源 将下面的软件下载到  /etc/yum.repos.d/   的目录下 官方基础:http:// ...

  9. 如何对K8s进行考核?Kuberhealthy来打个样!

    2019年11月,在圣地亚哥KubeCon,我们发布了kuberhealth 2.0.0--将kuberhealthy作为合成监测的Kubernetes operator.这个新功能为开发人员提供了创 ...

  10. 学习Flutter从0开始

    一. 认识Flutter 1.1. 什么是Flutter 先看看官方的解释: Flutter is Google's UI toolkit for building beautiful, native ...