我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Python基础之字符串

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Python基础之字符串

初识字符串

字符串的认识

首先,我们先认识下什么是字符串:

# 定义字符串
t_str1 = "Hello World"
t_str2 = "asdfghh"

print(t_str1)  # Hello World
print(t_str2)  # asdfghh

字符串的介绍

  • 字符串就是一串字符,是编程语言汇总表示文本的数据类型;
  • 在Python中可以使用一对双引号或者一对单引号定义一个字符串;
  • 字符串内部如果需要使用",可以使用'定义字符串;同理,单引号也是;除此之外,也可以用\转译单引号双引号;
  • 字符串的索引从0开始,可以用索引获取一个字符串的指定位置的字符;
  • 还可以用for遍历字符串中的每一个字符。

字符串的定义语法

变量名 = "一串字符"
eg:
t_str1 = "Hello World"
t_str2 = "asdfgh"
t_str3 = '他说:"你好呀!"'

字符串的操作函数

查看字符串操作函数

在ipython交互式下,先定义一个空字符串,然后输入 空字符. 按下tab键,即可查看;

In [1]: t_str = ""    

In [2]: t_str.
t_str.capitalize    t_str.isidentifier  t_str.rindex
t_str.casefold      t_str.islower       t_str.rjust
t_str.center        t_str.isnumeric     t_str.rpartition
t_str.count         t_str.isprintable   t_str.rsplit
t_str.encode        t_str.isspace       t_str.rstrip
t_str.endswith      t_str.istitle       t_str.split
t_str.expandtabs    t_str.isupper       t_str.splitlines
t_str.find          t_str.join          t_str.startswith
t_str.format        t_str.ljust         t_str.strip
t_str.format_map    t_str.lower         t_str.swapcase
t_str.index         t_str.lstrip        t_str.title
t_str.isalnum       t_str.maketrans     t_str.translate
t_str.isalpha       t_str.partition     t_str.upper
t_str.isdecimal     t_str.replace       t_str.zfill
t_str.isdigit       t_str.rfind

字符串所有的操作函数我们可以看上面。

字符串操作函数分类

1.判断类型

方法 说明
string.isspace() 如果string只包含空格,则返回True
string.isalnum() 如果string至少包含一个字符且所有字符都是字母或者数字则返回True
string.isalpha() 如果string至少有一个字符并且所有字符都是字母则返回True
string.isdecimal() 如果string只包含数字则返回True,全角数字
string.isdigit() 如果string只包含数字则返回True,全角数字,(1),\u00b2
string.isnumeric() 如果string只包含数字则返回True,全角数字,(1),\u00b2,汉字数字
string.istitle() 如果string是标题化的(每个单词的首字母大写)则返回True
string.islower() 如果string中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是小写,True
string.isupper 如果string中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是大写,True

2.查找和替换

方法 说明
string.startswitj(str) 检查字符串是否以str开头,是则返回True
string.endswith(str) 检查字符串是否以str结尾,是则返回True
string.find(str,start=0,end=len(string)) 检查str是否包含在string中,如果start和end指定范围,则检查是否包含在指定范围内,如果是则返回开始的索引值,否则返回-1
string.rfind(str,start=0,end=len(string)) 类似于find()函数,不过是从右边开始查找
string.index(str,start=0,end=len(string)) 和find()方法类似,只不过如果str不再string中会报错
string.rindex(str,start=0,end=len(string)) 类似于index(),不过是从右边开始
string.replace(oldstr,newstr,num=string.count(old)) 把string中的oldstr替换成newstr,如果num指定,则替换不超过num次

3.大小写与转换

方法 说明
string.capitalize() 把字符串的第一个字符大写
string.title() 把字符串的每个单词首字母大写
string.lower() 转换string中的所有大写字符转换为小写
string.upper() 转换string中的所有小写字母转换为大写
string.swapcase() 翻转string中的大小写

4.文本对齐

方法 说明
string.ljust(width) 返回一个原字符串左对齐,并使用空格填充至长度width的新字符
string.rjust(width) 返回一个原字符串右对齐,并使用空格填充至长度width的新字符
string.center(width) 返回一个原字符串居中,并使用空格填充至长度width的新字符

5.去除空白字符

方法 说明
string.lstrip() 截掉string左边(开始)的空白字符
string.rstrip() 截掉string右边(末尾)的空白字符
string.strip() 截掉string左右两边的空白字符

6.拆分和连接

方法 说明
string.partition(str) 把字符串string分成一个3元素的元组(str前面,str,str后面)
string.rpartition(str) 类似于partition()函数,不过是从右边开始查找
string.split(str="".num) 以str为分隔符切片string,如果num有指定值,则仅分隔num+1个子字符串,str默认包含'\r','\t','\n'和空格
string.splitlines() 按照行('\r','\t','\n')分隔,返回一个包含各行作为元素的列表
string.join(seq) 以string作为分隔符,将seq中的所有元素(的字符串表示)合并为一个新的字符串

字符串操作实操

字符串统计操作

t_str = "hello world hello python"

# 1.统计字符串长度
print(len(t_str))  # 24

# 2.统计某一个子字符串出现的次数
print(t_str.count("hel"))  # 2
print(t_str.count("abc"))  # 0

# 3.某一个子字符串出现的位置
print(t_str.index("llo"))  # 2
# 如果子字符串不存在,会报错
# print(t_str.index("abc"))

判断实操

示例1

t_str = "    \t\n"

print(t_str.isspace())  # True

示例2

# 判断字符串中是否只包含数字
str1 = "1"

print(str1)

print(str1.isdecimal())
print(str1.isdigit())
print(str1.isnumeric())

示例3

# 判断字符串中是否只包含数字
str2 = "1.1"

print(str2.isdecimal())
print(str2.isdigit())
print(str2.isnumeric())

# False
# False
# False

由此可见,这几种函数都不能判断小数

示例4

str3 = "(1)"

print(str3)
print(str3.isdecimal())
print(str3.isdigit())
print(str3.isnumeric())

# (1)
# False
# True
# True

提一下,本来结果应该是如上的,但可能是因为自己打的括号不对的原因,输出全是False

示例5
unicode 字符串

str4 = "\u00b2"

print(str4)
print(str4.isdecimal())
print(str4.isdigit())
print(str4.isnumeric())

# ²
# False
# True
# True

示例6

str5 = "一百"

print(str5)
print(str5.isdecimal())
print(str5.isdigit())
print(str5.isnumeric())

# 一百
# False
# False
# True

字符串的查找与替换实操

t_str = "hello world"

print(t_str.startswith("hel"))  # True
print(t_str.startswith("Hel"))  # False

print(t_str.endswith("ld"))  # True

# index也可以用来查找字符串,但index指定的字符串如果不存在,会报错;find不会报错,只会返回-1
print(t_str.find("llo"))  # 2
print(t_str.find("abc"))  # -1

# replace方法执行完成后,会返回一个新的字符串,不改变原来的字符串
new_str = t_str.replace("world", "python")
print(new_str)  # hello python
print(t_str)  # hello world

文本对齐

文本居中对齐默认英文空格填充

注意,如果没有指定填充内容,文本默认以英文空格进行填充

# 要求,顺序并且居中对齐输出以下内容

poem = ["早春呈水部张十八员外", "韩愈", "天街小雨润如酥", "草色遥看近却无", "最是一年春好处", "绝胜烟柳满皇都"]

for poem_str in poem:
    print("|%s|" % poem_str.center(10))

# 输出结果
"""
|    早春    |
|    韩愈    |
| 天街小雨润如酥  |
| 草色遥看近却无  |
| 最是一年春好处  |
| 绝胜烟柳满皇都  |
"""

文本居中对齐中文空格填充

注意,中文空格要切换输入法到全角

poem = ["早春", "韩愈", "天街小雨润如酥", "草色遥看近却无", "最是一年春好处", "绝胜烟柳满皇都"]

for poem_str in poem:
    print("|%s|" % poem_str.center(10, " "))

# 输出结果
"""
|    早春    |
|    韩愈    |
| 天街小雨润如酥  |
| 草色遥看近却无  |
| 最是一年春好处  |
| 绝胜烟柳满皇都  |
"""

文本左对齐

注意,如果是中文要对齐,记得是圆角,不再赘述

poem = ["早春", "韩愈", "天街小雨润如酥", 
        "草色遥看近却无", "最是一年春好处", "绝胜烟柳满皇都"]

for poem_str in poem:
    print("|%s|" % poem_str.ljust(10, " "))

"""
|早春        |
|韩愈        |
|天街小雨润如酥   |
|草色遥看近却无   |
|最是一年春好处   |
|绝胜烟柳满皇都   |
"""

文本右对齐

只需将print("|%s|" % poem_str.ljust(10, " ")) 换成rjust即可,不演示。

strip 去除空白字符

    # 要求,顺序并且居中对齐输出以下内容

poem = ["\t\n早春", "韩愈", "天街小雨润如酥", "草色遥看近却无\t\n", 
"最是一年春好处", "绝胜烟柳满皇都"]

for poem_str in poem:
    # 先使用strip方法去除字符串中的空白字符
    # 再使用center方法居中显示文本
    print("|%s|" % poem_str.strip().center(10, " "))
"""
|    早春    |
|    韩愈    |
| 天街小雨润如酥  |
| 草色遥看近却无  |
| 最是一年春好处  |
| 绝胜烟柳满皇都  |
"""

字符串拆分和拼接 split join

# 要求,将字符串中的空白字符全部去除,再使用" "作为分隔符,拼接成一个整齐的字符串

poem_str = "\t\n早春\t韩愈\t\n天街小雨润如酥\t草色遥看近却无\t\n最是一年春好处\t绝胜烟柳满皇都\t\n"
print(poem_str)

# 1.拆分字符串
poem_list = poem_str.split()
print(poem_list)
# 2.合并字符串
result = " ".join(poem_list)
print(result)

"""
早春  韩愈  
天街小雨润如酥 草色遥看近却无 
最是一年春好处 绝胜烟柳满皇都 

['早春', '韩愈', '天街小雨润如酥', '草色遥看近却无', '最是一年春好处', '绝胜烟柳满皇都']
早春 韩愈 天街小雨润如酥 草色遥看近却无 最是一年春好处 绝胜烟柳满皇都
"""

字符串的切片

切片语法和注意

切片方法适用于 字符串,列表,元组

  • 切片使用索引值来限定范围,从一个大的字符串中切出小的字符串;
  • 列表和元组都是有序的集合,都能够通过索引值获取到对应的数据;
  • 字典是一个无序的集合,使用用键值对保存数据;

比如我们对于一个"python"字符串,
顺序是0 1 2 3 4 5;倒序是-1 -2 ...;

切片语法

字符串[开始索引:结束索引:步长]

注意:

  1. 指定的区间属于左闭右开型[开始索引,结束索引) --> 开始索引 >= 范围 < 结束索引;即从其实位开始,到结束位的前一位结束(不包含结束位本身)。
  2. 从头开始,开始索引数字可以省略,冒号不能省略;
  3. 到末尾结束,结束索引 数字可以省略,冒号不能省略;
  4. 步长为1,如果连续切片,数字和冒号都可以省略。

切片实操

现在有一个num_str="0123456789",请完成以下操作:

1.截取从 2-5 位置的字符串
2.截取从2-末尾的字符串
3.截取从 开始-5 位置的字符串
4.截取完整的字符串
5.从开始位置,每隔一个字符截取字符串
6.从索引1开始,没隔一个取一个
7.截取从 2~ 末尾-1 的字符串
8.截取字符串末尾两个字符
9.字符串的逆序

答案:

1.num[2:6]
2.num[2:]
3.num[0:6]
3.num[:6]
4.num[:]
5.num[::2]
6.num[1::2]
7.num[2:-1]
8.num[-2:]
9.num[-1::-1]
9.num[::-1]

num[0::-1]的结果:"0"

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Python基础之字符串

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Python基础之字符串

初识字符串字符串的认识首先,我们先认识下什么是字符串:# 定义字符串t_str1 = "Hello World"t_str2 = "asdfghh"print(t_str1) # Hello Worldprint(t_str2) # a
2023-01-31

Python 基础知识之字符串处理

Python字符串处理 字符串输入:my_string = raw_input("please input a word:")字符串判断: (1) 判断是不是纯字母my_string.isalpha()字符串搜索匹配: (1) rere正则
2022-06-04

python基础-字符串(6)

一、引言当打来浏览器登录某些网站的时候,需要输入密码,浏览器把密码传送到服务器后,服务器会对密码进行验证,其验证过程是把之前保存的密码与本次传递过去的密码进行对比,如果相等,那么就认为密码正确,否则就认为不对;服务器既然想要存储这些密码可以
2023-01-30

Python基础:字符串(string)

字符串的常用操作  字符串与数组一样,支持索引操作、切片与遍历  索引、切片操作:name = 'jason'name[0]'j'name[1:3]'as'  遍历:for char in name: print(char) ja
2023-01-31

Python之路-基础数据类型之字符串

字符串是不可变的数据类型索引(下标)我们在日常生活中会遇到很多类似的情况,例如吃饭排队叫号,在学校时会有学号,工作时会有工号,这些就是一种能保证唯一准确的手段,在计算机中也是一样,它就叫索引,也叫下标,注意:索引都是从0开始,只有有序的对象
2023-01-30

Python基础篇之字符串方法总结

Python提供了丰富的字符串处理方法,可以方便地对字符串进行操作、处理和转换。在本文中,我们将介绍Python中常用的字符串方法,需要的可以参考一下
2023-05-17

Python 基础之字符串string详解及实例

Python字符串(string) 详解 及 代码 Python的字符串可以使用单引号('), 双引号("), 三引号('''); 三引号(''')里面, 可以添加单引号和双引号, 也可以通过转义序列()添加; 字符串放在一起自动连接成为一
2022-06-04

Python基础-字符串的使用

字符串解释:字符串是不可变的,所有元素赋值和切片赋值操作都是非法的,属于序列一种(字符串、元组、列表)。 一、格式化字符串(1)、format()方法==str.format()作用:将传入的参数进行格式化1、替换字段名的两种方法:要替换的
2023-01-31

Python字符串基础是什么

本篇文章为大家展示了Python字符串基础是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。一、常量单引号:spam双引号:"spam"三引号:...spam...,"""...spam...""
2023-06-02

Python基础知识(六)--字符串

#字符串   #字符串是用固定的str数据类型表示的,用来存放Unicode字符序列  #str数据类型可以用来创建一个字符串对象,参数为空时返回一个空字符串  a = str()  print(a)                    
2023-01-31

python字符串的基础操作

本篇内容介绍了“python字符串的基础操作”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1 处理字符串原始字符串:在字符串开始的引号之前加
2023-06-02

python3——字符串基础

字符串可以使用一对单引号或一对双引号指定起止位置,两种方式指定的字符串完全等价。如'Hello'和"World"可以用三引号("""或''')指定多行字符串,其中可自由使用单、双引号而不需转义。如'''"What's your name?,
2023-01-31

day10-11-python基础之字符

1.开发工具  python开发IDE: pycharm、eclipse   # 专业版  # 不要汉化2.运算符  结果是值    算数运算      a = 10 * 10    赋值运算      a = a + 1 a+=1  结果
2023-01-31

python基础之字符编码

一 计算机基础知识 二 文本编辑器存取文件的原理(nodepad++,pycharm,word)#1、打开编辑器就打开了启动了一个进程,是在内存中的,所以,用编辑器编写的内容也都是存放与内存中的,断电后数据丢失#2、要想永久保存,需要点击保
2023-01-30

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录