【Python】字符串 - 集大成篇

目录

1、不同语言的字符串比较

1.1、C 语言

1.2、C ++ 语言

1.2.1   C 风格字符串

1.2.2   C ++ 风格字符串

1.3、JAVA

1.4、Python 

2、Python  字符串 

2.1、方法

2.1.1   title ()

2.1.2   lower () 

2.1.3   upper ()

2.1.4   rstrip () 

2.1.5   lstrip ()

2.1.6   strip ()

2.1.7   center() 

2.1.8   split()

2.1.9   replace()

2.1.10   join()

2.1.11   find() 

2.2、字符串的单引号和双引号 

3、f 字符串

3.1、在字符串中使用变量 

3.2、格式说明符 

4、总结


1、不同语言的字符串比较

        程序 收集并定义 某种数据,然后使用他们来做一些有意义的事情。有鉴于此,对数据进行分类大有裨益

        有一种数据,叫做字符串型数据。字符串是 字符的集合,不同的编程语言对于字符串的处理并不相同。在 C 语言中,一个字符串指的是 由字符构成的数组;在 C++ 中,字符串既可以指 由字符构成的数组,也可以指一种名叫 string 的数据类型;在 Java 中,字符串是一种名叫 string 的数据类型;同样的,在 Python 中,字符串也是一种 string 数据类型

编程语言 字符串的类型
C由字符构成的数组
C++由字符构成的数组String  数据类型
JavaString  数据类型
PythonString  数据类型

接下来分别比较,在不同编程语言中是怎样处理字符串的

1.1、C 语言

char 变量名[ ]  =  " 字符串值 "

char arr1[] = "Hello, C !!";

printf("%s\n", arr1);

1.2、C ++ 语言

1.2.1   C 风格字符串

一种由字符构成的数组

char  变量名[ ]  =  " 字符串值 "

char arr[] = " Hello C++ ! ! ";

cout << arr << endl;

1.2.2   C ++ 风格字符串

一种数据类型

string  变量名  =  " 字符串值"

string arr = " Hello C++ ! ! ";

cout << arr << endl;

1.3、JAVA

String  变量名  =  " 字符串值 "  

String arr = "Hello Java ! !";

System.out.println(arr);

1.4、Python 

变量名 = " 字符串值 "

name = "aperion"

 注:Python 与众不同的一点在于,不用人为的定义变量的数据类型,这些都是由 Python 自动完成。

2、Python  字符串 

        在 Python 中,字符串也是一种 string 数据类型用引号括起的都是字符串,其中的引号可以是 单引号,也可以是 双引号。在其他语言中,单引号括起的是字符,双引号阔起的是字符串,这一点区别于 Python 语言。

2.1、方法

字符串的方法太多了,这里只介绍一些最有用的。

2.1.1   title ()

作用:将单词首字母改为大写

name = "lebron james"

print(name.title())

0cb721fe86bc4502bc85746a8c67b866.jpeg

2.1.2   lower () 

作用:将单词全部小写 

name = "Lebron James"

print(name.lower())

c71f10e453a4442b930ec2cef0e824db.jpeg

2.1.3   upper ()

作用:将单词全部大写 

name = "Lebron James"

print(name.upper())

86bab75844e3461a925f203a4626502f.jpeg

2.1.4   rstrip () 

作用:删除字符串尾部空白

        在程序中,额外的空白令人迷惑。对 程序员 说,'Python' 和 'Python ' 看起来几乎没有什么两样,但对 程序 来说,它们却是两个不同的字符串。Python 能够发现 'Python ' 中额外的空白,并认为它意义重大。 

        空白很重要,因为我们经常需要比较两个字符串是否相同。例如:在用户登录网站时,检查其用户名,看看用户有没有误输入空白,如果有,就删除其空白。

language = "Python "

print(language)

language = language.rstrip()

print(language)

98c18da0f7f7421e804ceb6f1d7b2724.jpeg

  • 上图终端中的执行结果看起来一样,实则不一样。打印的第一个 Python 有空格,因为 Python 后面再无字符,所以空格的显现不明显。打印的第二个 Python 没有空格,因为第五行代码的执行,删除了 Python 后面的空格。

2.1.5   lstrip ()

作用:删除字符串开头空白 

language = " Python"

print(language)

language = language.lstrip()

print(language)

e42915d541524abe9d2b8f34ff0c2eea.jpeg

2.1.6   strip ()

作用:删除字符串两边的空格 (但不包括中间的空白)    

text = ' Hello Python !! '

print(text)

new_text = text.strip()

print(new_text)

2.1.7   center() 

作用:通过在两边添加填充字符串(默认为空格)让字符串居中

        在 Python 中,center() 方法是一个内置的字符串方法,它允许我们把一个字符串用指定的宽度让字符串居中。center() 方法 返回一个新的字符串,这个新的字符串被指定的字符所填充(默认为空格),同时它也被指定的宽度使得字符串居中。center() 方法的语法如下:

string.center( width [, fillchar] )

        语法中的 string 是要居中的字符串,width 得到的是居中字符串的宽度,fillchar 是要使用可选填充的字符。如果未指定 fillchar ,默认情况下使用 空格字符。 

# 原始字符串
text = 'Hello Python !'

# 居中字符串
centered_text = text.center(20,'-')

print(text)

print(centered_text)

  • 在本例中,原始字符串“Hello,Python!”在 20个字符的宽度内居中,两边用破折号(-)填充。 

2.1.8   split()

作用:将字符串拆分为列表

① 分隔符 '+'

text = '1+2+3+4+5+6'

new_text = text.split('+')
print(new_text)

② 分隔符 '/' 

text = '/usr/bin/env'

new_text = text.split('/')
print(new_text)

③  没有指定分隔符 

text = 'usring the default'

new_text = text.split()
print(new_text)

  • 如果没有指定参数,将默认在单个或多个连续的空白字符(空格、制表符、换行符等)处进行拆分。 

2.1.9   replace()

作用:将指定字符子串都替换为另一个字符串,并返回替换后的结果,即查找并替换

text = 'This is C programming langugaes'

print(text)

new_text = text.replace('C','Python')
print(new_text)

2.1.10   join()

作用:用于合并列表的元素 

seq = ['1','2','3','4','5']

sep = '+'

new_seq = sep.join(seq)
print(new_seq)

dirs = '','usr','bin','env'

print('/'.join(dirs))

dirs = '','usr','bin','env'

print('C:'+'\\'.join(dirs))

2.1.11   find() 

作用:在字符串中查找子串,如果找到,就返回子串的 第一个字符的索引,否则返回 -1。

text = 'With a moo-moo here,and a moo-moo there'

print(text.find('moo'))

title = "Monty Python's Flying Circus"

print(title.find('Monty'))
print(title.find('Python'))
print(title.find('Flying'))
print(title.find('Zirquss'))

还可指定搜索的起点和终点(它们都是可选的) 

subject = '$$$ Get rich now!!! $$$'

print(subject.find('$$$'))

# 只指定起点
print(subject.find('$$$',1))

print(subject.find('!!!'))

# 同时指定起点和终点
print(subject.find('!!!',0,16))

2.2、字符串的单引号和双引号 

        Python 中的字符串是用单引号和双引号表示,这一点区别于其他编程语言。

3、f 字符串

        在 Python 3.6 版本中,引入了一种新的 字符串格式化 语法,称为 f 字符串 格式化字符串。f 字符串提供了一种简单,直接和易于读取的方法来将表达式嵌入到字符串中,该方法使得在字符串中使用变量值简单许多。

        如果你使用的是 python 3.5 或更早的版本,需要使用 format() 方法,而非这种 f 字符串格式化语法。f 字符串有两个用法,一是在字符串中使用变量,二是格式说明符。接下来具体的详细介绍这两种用法。

3.1、在字符串中使用变量 

        要在字符串中插入变量的值,可在前引号前加上字母 f ,再将要插入的变量 放在花括号{}内即在字符串中使用大括号 {} 来包含何有效的 Python 表达式,在大括号中使用任何有效的 Python 表达式,并可以在其中引用 变量调用函数 等等。这样,当 Python 显示字符串时,将把每个变量都替换为其值。所以这种字符串名为 f 字符串,f 是 format(设置格式)的简写。

first_name = 'ada'

last_name = 'lovelace'

full_name = f'{first_name} {last_name}'

print(full_name)

print(f'Hello, {full_name.title()}')

 

3.2、格式说明符 

        在大括号内,可以使用花括号 {} 来包含变量名,并在大括号中使用 冒号 : 来添加 格式化说明符,例如我们使用 f 字符串将变量 Pi 嵌入到字符串中,并使用 格式说明符 ".2f" 来将 Pi 格式化为只有两位小数。

pi = 3.14159265359
print(f"Pi 的值大约是 {pi:.2f}")

 

        这段代码将 pi 的值格式化为 带两位小数的字符串,并将其插入到一段字符串中输出。具体来说,这段代码首先定义了一个名为 pi 的 浮点型变量,其值为 3.14159265359。然后,它使用 f 字符串将字符串和变量的值组合起来。

        在大括号 {} 中,冒号 : 后面的 .2f 表示 将 pi 格式化为带两位小数的浮点数,并将结果插入到大括号所在的位置。在这里,.2f 表示要将浮点数格式化为带两位小数的字符串,其中 f 表示 要使用固定点表示法 来表示浮点数。

        最后,整个字符串被打印出来,输出结果为:Pi 的值大约是 3.14。

4、总结

        这篇文章主要讲解了 Python 字符串和其他语言字符串的比较,以及 Python 字符串常用的方法等,如果想要了解更多的 Python 字符串方法,可以参考 Python 官方文档。掌握 Python 字符串,就能驾驭 文本处理数据清洗Web 开发 等多个领域,从而大大提高编程效率。希望这篇博客能够帮助到各位小伙伴。

        本期的分享总结就到这里了,如果有疑问的小伙伴,我们评论区交流嗷~,笔者必回,我们下期再见啦!!

         

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Aperion

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值