C语言n 10 u0010,10数据类型---字符串高级方法

字符串的常用操作

在 ipython 中定义一个 字符串,例如:hello_str = ""

输入 hello_str. 按下 TAB 键,ipython 会提示 字符串 能够使用的 方法 如下:

In [1]: hello_str.

hello_str.capitalize hello_str.isidentifier hello_str.rindex

hello_str.casefold hello_str.islower hello_str.rjust

hello_str.center hello_str.isnumeric hello_str.rpartition

hello_str.count hello_str.isprintable hello_str.rsplit

hello_str.encode hello_str.isspace hello_str.rstrip

hello_str.endswith hello_str.istitle hello_str.split

hello_str.expandtabs hello_str.isupper hello_str.splitlines

hello_str.find hello_str.join hello_str.startswith

hello_str.format hello_str.ljust hello_str.strip

hello_str.format_map hello_str.lower hello_str.swapcase

hello_str.index hello_str.lstrip hello_str.title

hello_str.isalnum hello_str.maketrans hello_str.translate

hello_str.isalpha hello_str.partition hello_str.upper

hello_str.isdecimal hello_str.replace hello_str.zfill

hello_str.isdigit hello_str.rfind

提示:正是因为 python 内置提供的方法足够多,才使得在开发时,能够针对字符串进行更加灵活的操作!应对更多的开发需求!

常用的高级方法

方法

说明

string.strip()

截掉 string 左右两边的空白字符

string.split(str="")

以 str 为分隔符拆分 string,如果 num 有指定值,

则仅分隔 num + 1 个子字符串,str 默认包含 '\r', '\t', '\n' 和空格

string.join(seq)

以 string 作为分隔符,将 seq 中所有的元素(的字符串表示)

合并为一个新的字符串

string.replace(old_str, new_str)

把 string 中的 old_str 替换成 new_str

常用高级方法案例:

In [4]: h = h.strip()

In [5]: h

Out[5]: 'hello world !'

In [6]: h.split()

Out[6]: ['hello', 'world', '!']

In [7]: h = h.split()

In [8]: h

Out[8]: ['hello', 'world', '!']

In [9]: " ".join(h)

Out[9]: 'hello world !'

In [10]: " hello world ! ".strip()

Out[10]: 'hello world !'

In [11]: " hello world ! ".strip().split()

Out[11]: ['hello', 'world', '!']

In [12]: 'hello world'.replace('world', 'python')

Out[12]: 'hello python'

判断类型

方法

说明

string.isalnum()

如果 string 至少有一个字符并且所有字符都是字母或数字则返回 True

string.isalpha()

如果 string 至少有一个字符并且所有字符都是字母则返回 True

string.isdecimal()

如果 string 只包含数字则返回 True,全角数字

string.isdigit()

如果 string 只包含数字则返回 True,全角数字、⑴、\u00b2

string.isnumeric()

如果 string 只包含数字则返回 True,全角数字,汉字数字

string.istitle()

如果 string 是标题化的(每个单词的首字母大写)则返回 True

string.isspace()

如果 string 中只包含空格,则返回 True

string.islower()

如果 string 中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是小写,则返回 True

string.isupper()

如果 string 中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是大写,则返回 True

# 1. 判断空白字符

space_str = " \t\n\r"

print(space_str.isspace())

# 2. 判断字符串中是否只包含数字

# 1> 都不能判断小数

# num_str = "1.1"

# 2> unicode 字符串

# num_str = "\u00b2"

# 3> 中文数字

num_str = "一千零一"

print(num_str)

print(num_str.isdecimal())

print(num_str.isdigit())

print(num_str.isnumeric())

查找和替换

方法

说明

string.startswith(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(old_str, new_str, num=string.count(old))

把 string 中的 old_str 替换成 new_str

如果 num 指定,则替换不超过 num 次

大小写转换

方法

说明

string.capitalize()

把字符串的第一个字符大写

string.title()

把字符串的每个单词首字母大写

string.lower()

转换 string 中所有大写字符为小写

string.upper()

转换 string 中的小写字母为大写

string.swapcase()

翻转 string 中的大小写

In [12]: 'hello world'.capitalize()

Out[12]: 'Hello world'

In [13]: 'hello world'.title()

Out[13]: 'Hello World'

文本对齐

方法

说明

string.ljust(width)

返回一个原字符串左对齐,并使用空格填充至长度 width 的新字符串

string.rjust(width)

返回一个原字符串右对齐,并使用空格填充至长度 width 的新字符串

string.center(width)

返回一个原字符串居中,并使用空格填充至长度 width 的新字符串

In [2]: "hello world !".center(20)

Out[2]: ' hello world ! '

去除空白字符

方法

说明

string.lstrip()

截掉 string 左边(开始)的空白字符

string.rstrip()

截掉 string 右边(末尾)的空白字符

string.strip()

截掉 string 左右两边的空白字符

In [3]: ' hello world ! '.strip()

Out[3]: 'hello world !'

拆分和连接

方法

说明

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', '\n', '\r\n')分隔,返回一个包含各行作为元素的列表

string.join(seq)

以 string 作为分隔符,将 seq 中所有的元素(的字符串表示)合并为一个新的字符串

字符串运算

运算符

Python 表达式

结果

描述

+

"1,2," + "3, 4"

"1, 2, 3, 4"

合并

*

"Hi! " * 4

'Hi! Hi! Hi! Hi!'

重复

in

'3' in "1, 2, 3"

True

元素是否存在

not in

4 not in"1, 2, 3"

True

元素是否不存在

> >= == < <=

"2" < "3"

True

元素比较

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值