前面介绍了一下比较晦涩而且深入的字符文本的处理方法,接下来几节将带来一些常规的操作。比较容易入手。

字符串处理

字符串字面量

字符字面量的通过使用:以单引号开始和结束,但是如何处理的是字符串内使用单引号。

例如:'That is Wali's cat

双引号

字符字面量的还可以通过使用:双引号开始和结束,这样就可以处理字符串内使用单引号的问题. 如下:"That is Wali's cat"

转义字符

“转义字符”让你输入一些字符,它们用其他方式是不可能放在字符串里的.

转义字符包含一个倒斜杠(\),紧跟着是想要添加到字符串中的字符.转义字符\'和\"让你能在字符串中加入单引号和双引号 常见的转义字符如下表:

原始字符串

以在字符串开始的引号之前加上 r,使它成为原始字符串。“原始字符串”完全忽略所有的转义字符,打印出字符串中所有的倒斜杠。Python 认为倒斜杠是字符串的一部分,而不是转义字符的开始

用三重引号的多行字符串

多行字符串的起止是 3 个单引号或 3 个双引号。“三重引号”之间的所有引号、制表符或换行,都被认为是字符串的一部分。

多行注释

虽然井号字符(#)表示这一行是注释,但多行字符串常常用作多行注释,

字符串下标和切片

字符串像列表一样,使用下标和切片.通过切片并将结果子字符串保存在另一个变量中,就可以同时拥有完整的字符串和子字符串

字符串的 in 和 not in 操作符

像列表一样,in 和 not in 操作符也可以用于字符串.

spam = "That is Wali's cat"

print(spam)

# 转义字符

spam2 = 'That is Wali\'s cat'

spam3 = 'That is Wali\'s cat\nHow are you?\nI\'m fine.'

print(spam2)

print(spam3)

# 原始字符串

print(r'That is Wali\'s cat')

# 三重引号的多行字符串

print('''Dear Alice,Eve's cat has been arrested for catnapping, cat burglary, and extortion.Sincerely,Bob''')

# 字符串下标和切片

print(spam[0])

print(spam[1:3])

print(spam[:5])

print(spam[6:])

# 字符串的 in 和 not in 操作符

print("wali" in spam)

print("wali" not in spam)

print("Wali" in spam)

That is Wali's cat

That is Wali's cat

That is Wali's cat

How are you?

I'm fine.

That is Wali\'s cat

Dear Alice,

Eve's cat has been arrested for catnapping, cat burglary, and extortion.

Sincerely,

Bob

T

ha

That

s Wali's cat

False

True

True

常用的字符串方法

upper()、lower()、isupper()和 islower()upper(): 将字符串中的字母转换为大写字母

lower():将字符串中的字母转换为小写字母

isupper(): 判断字符串中的字母是否都是大写字母

islower() :判断字符串中的字母是否都是小写字母

注意点: 比如spam 是一个一个字符串,当使用spam.upper()的时候,会生成一个新的字符串,而不会去改变spam字符串本身。

upper()与lower()的使用场景:

在字符串进行无关大小写比较的时候,使用该方法很有效。

spam = 'Wali AI'

spamUp = spam.upper()

print('spam:',spam)

print('spamUp:',spamUp)

spam = spam.lower()

print('spam:',spam)

spam: Wali AI

spamUp: WALI AI

spam: wali ai

#大小写无关的比较

print('How are you?')

feeling = input()

if feeling.lower() == 'great':

print('I feel great too.')

else:

print('I feel liitle bad.')

How are you?

great

I feel great too.

#如果字符串至少有一个字母,并且所有字母都是大写或小写

spam = '12345'

print(spam.isupper())

print(spam.islower())

spam = 'a12345B'

print(spam.isupper())

print(spam.islower())

spam = spam.upper()

print(spam.isupper())

False

False

False

False

True

isX 字符串方法

isX 该类型的方法用来判断字符的类型和属性,返回一个布尔值。 - isupper(): 判断字符串中的字母是否都是大写字母 - islower() :判断字符串中的字母是否都是小写字母 - isalpha(): 判断字符串是否只包含字母,并且非空 - isalnum(): 判断字符串是否只包含字母,数字,并且非空 - isdecimal(): 判断字符串是否只包含数字,并且非空 - isspace(): 判断字符串是否只包含空格,制表符和换行,并且非空 - istitle(): 判断字符串是否只包含以大写字母开头,后面都是小写字母。

使用的场景:

对于一些需要验证字符信息是否符合规范的方式,比如验证用户输入的信息

print('wali'.isalpha())

print('wali12'.isalpha())

print('wali12'.isalnum())

print('wali'.isnumeric())

print('wali'.isdecimal())

print('\t'.isspace())

True

False

True

False

False

True

# 使用的场景

while True:

print('Enter your age:')

age = input()

if age.isdecimal() and int(age) > 0:

break

else:

print("please enter right number")

Enter your age:

-1

please enter right number

Enter your age:

32

startswith()和 endswith()

用来判断字符串的开头和结尾的字符串是否与传入的字符相同。这样就可以替代==操作符。

#startswith()和 endswith()

spam = "I watch wali ai."

print(spam.startswith('I'))

print(spam.startswith('I w'))

print(spam.startswith('I watch'))

print(spam.startswith('I watch wa'))

print(spam.endswith('ai.'))

True

True

True

True

True

join()和 split()

join():将一个字符串列表拼接成一个字符串,但是调用该方法的字符串将会插入到字符串之间.

split(): 将一个字符串分割成一个字符串列表,分割的方式按照传入的标志开始分割.常见的用法是:分割多行字符串. spam.split('\n')

# join()和 split()

lsStr = ['I','follow','Wali','AI']

print(' '.join(lsStr))

print(','.join(lsStr))

print('ABC'.join(lsStr))

print('IABCfollowABCWaliABCAI'.split('ABC'))

spam = '''Dear Alice,How have you been? I am fine.There is a container in the fridgethat is labeled "Milk Experiment".Please do not drink it.Sincerely,Bob'''

print(spam.split('\n'))

I follow Wali AI

I,follow,Wali,AI

IABCfollowABCWaliABCAI

['I', 'follow', 'Wali', 'AI']

['Dear Alice, ', 'How have you been? I am fine.

用 rjust()、ljust()和 center()方法对齐文本

rjust()与ljust() 用来对齐,左对齐与右对齐,传入的参数是用来表示需要填充的字符个数和以什么方式填充.

center() 居中对齐.

如果需要打印表格式数据,留出正确的空格,这些方法就特别有用.

spam = "Wali"

print(spam.rjust(10,'*'))

print(spam.ljust(10,'*'))

print(spam.center(10,'*'))

# 多余填充的长度就不响应该方法

spam = 'I follow wali AI.'

print(spam.rjust(10,'*'))

print(spam.ljust(10,'*'))

******Wali

Wali******

***Wali***

I follow wali AI.

I follow wali AI.

用 strip()、rstrip()和 lstrip()删除空白字符

strip() 用来删除字符串左右两边的空白字符 - 空格 - 制表符 - 换行符

还可以通过传入字符串参数,来指定需要删除指定的字符串参数.

spam = ''' WaliAI'''

print(spam.strip())

print(spam.lstrip())

print(spam.rstrip())

spam = 'SpamSpamBaconSpamEggsSpamSpam'

spam.strip('ampS')

Wali

AI

Wali

AI

Wali

AI

'BaconSpamEggs'

请大家关注公众号:瓦力人工智能

分享关于人工智能,机器学习,深度学习以及计算机视觉的好文章,同时自己对于这个领域学习心得笔记。想要一起深入学习人工智能的小伙伴一起结伴学习吧!

码字不容易,如果觉得对你有帮助,麻烦帮忙点赞或者收藏,你的支持和鼓励,是我创作最大的动力!

python字符串字面量有哪四种定义方式_Python进阶16_字符串基础操作相关推荐

  1. python字符串字面量有哪四种定义方式_Python学习笔记(四)字符串型

    字符串是 Python 中最常用的数据类型.我们可以使用引号('或")来创建字符串. 在最新的Python 3版本中,字符串是以Unicode编码的,也就是说,Python的字符串支持多语言 ...

  2. python字符串字面量有哪四种定义方式_python中字符串连接的四种方式

    原博文 2018-12-05 14:28 − 以下实例展示了join()的使用方法 #!/usr/bin/python str = "-"; seq = ("a" ...

  3. C语言结构体的四种定义方式

    1.先定义结构体类型,再定义结构体变量 struct student{int age;char* name; };struct student stu;//stu为student的结构体变量 2.定义 ...

  4. python写http post请求的四种请求体

    Web自动化测试(25)  HTTP 协议规定 POST 提交的数据必须放在消息主体(entity-body)中,但协议并没有规定数据必须使用什么编码方式.常见的四种编码方式如下:  1.applic ...

  5. python打印26个字母的四种方法

    python打印26个字母的四种方法 1.直接用ascii_letters方法 代码如下: print(string.ascii_letters[:26]) 2.使用字符串的ord方法将其转化为asc ...

  6. 深度讲解TS:这样学TS,迟早进大厂【15】:字符串字面量类型

    博主是一个专注于前端开发的程序猿~ 曾经主做于vue,react,小程序,uniapp,RN等各大框架~ 现在主攻web安全,数据加密,项目架构,性能优化~ 技术之路,任道重远.未来属于努力奋斗的我们 ...

  7. c语言相邻字符串字面量,C语言预处理#运算符的细节

    #运算符将宏的一个参数转换为字符串字面量,它仅允许出现在带参数的宏的替换列表中. 例如:使用PRINT_INT宏作为一个快捷的方法来整形变量或者表达式的值,#运算符可以使PRINT_INT为每个输出的 ...

  8. Java 判断字符串是否为空的四种方法、优缺点与注意事项

    以下是Java 判断字符串是否为空的四种方法: 方法一: 最多人使用的一个方法, 直观, 方便, 但效率很低: if(s == null ||"".equals(s)); 方法二: ...

  9. 【Python基础】Python爬虫的两套解析方法和四种信息提取方式

    Python爬虫 Author:Iouwill Machine Learning Lab 分享一篇往日旧文章,非常实用. 对于大多数朋友而言,爬虫绝对是学习python的最好的起手和入门方式.因为爬虫 ...

最新文章

  1. 新视频超分算法来了:CVPR 2021 NTIRE 2021 冠军
  2. 【20181102T2】飞越行星带【智商题+最小瓶颈路】
  3. java判断闰年通过多态方法_04748《Java语言程序设计》实验指导书.doc
  4. 计算机操作安全协议,安全协议操作语义模型研究及应用-计算机软件与理论专业论文.docx...
  5. 控件的布局 1124
  6. 沾化区php学校,推进校地合作 助力产教融合:滨州市技术学院与沾化经济开发区举行签约仪式...
  7. windows快捷键完整版分享
  8. java 省市联动_Java 地区字典之省市区三级联动 (一)
  9. 分享几个在线制作APP应用的网站
  10. kali 2022.2 安装GVM
  11. vue+openlayers实现地图打点
  12. 服务机器人“大战”进入下半场,竞争焦点变了
  13. init-history
  14. 安全HCIP之华为USG6000
  15. 电脑显示正在进行自动修复此计算机,怎么处理win10系统开机一直显示“正在准备自动修复”无法启动的操作教程...
  16. 图像去模糊(一)——理解模糊核
  17. zan php demo,zanphp源码解读 - 应用的启动
  18. 微信android手机中点击大图片会自动放大图片
  19. 新iPad为何舍弃Lightning,改用Type-C
  20. 《数字电子技术基础》4.4/6.5 组合逻辑/时序逻辑电路中的竞争-冒险

热门文章

  1. 云顶之弈法机器人_云顶之弈机器人怎么用最好 云顶之弈机器人使用技巧
  2. python 爬虫 学习笔记
  3. 哈工大-软件构造-Lab3(1)
  4. 华为手机升级回退_HarmonyOS版可通过华为手机助手回退到EMUI 11.0官方稳定版
  5. python龙旋风图形代码_龙卷风图和python中的p10p90(matplotlib)
  6. 关于“996”的个人看法
  7. 合肥科学岛安光所计算机应用,中国科学院合肥物质科学研究院
  8. android语音识别之科大讯飞话音API的使用
  9. Mac下安装windows虚拟机-永久有效
  10. thinkPHP中时间转换