Python数据类型方法详解(一)

目录

1.序列类型通用方法

2.字符串方法


1.序列类型通用方法

序列类型指的就是可以通过下标访问的数据 : 字符串 , 列表 , 集合 , 元组 , 字典

1.1 len()

len()  用于计算序列的长度

返回值是数值,表示当前序列一共有几个数据

print(len("abcds"))   #字符串长度
print(len([1,2,3,4])) #列表长度
print(len((1,2,34,5)))#元组长度
print(len({'name':'ouwen'})) #字典中键值对的数量
print(len({1,2,34})) #集合中元素的长度

输出结果:

5
4
4
1
3

1.2 max()

max() 用于检索序列中的最大元素,需要注意

5345
5345
5345
6

的是检索的值必须是数值或者数值类型字符串

返回值是序列中的最大值

print(max([1,2,3,4,5345,345,345,3]))  #列表
print(max((1,2,3,4,5345,345,345,3)))  #元组
print(max({1,2,3,4,5345,345,345,3}))  #集合
print(max('123456'))       #字符串

输出结果:

5345
5345
5345
6

1.3 min()

找最小值,和 max() 刚好相反

print(min([1,2,3,4,5345,345,345,3]))  #列表
print(min((1,2,3,4,5345,345,345,3)))  #元组
print(min({1,2,3,4,5345,345,345,3}))  #集合
print(min('123456'))       #字符串

输出结果:

1
1
1
1

1.4 sum()

计算元素之和,必须是数值,字符串都不行

sum() 适用于  列表 , 元组 , 集合

print(sum([1,2,3,4,5]))  #列表
print(sum((1,2,3,4,5)))  #元组
print(sum({1,2,3,4,5}))  #集合

输出结果:

15
15
15

2.字符串方法

2.1 str.join(ite) 

2.1.1 语法:

join  是 Python 中字符串的内置方法 ,用于将可迭代对象(如列表、元组、集合、字符串等 )中

的元素连接成一个字符串。

–  str  :是一个字符串,作为连接时的分隔符 ,用来分隔  ite 中的每个元素。比如  ","  表示用逗号

分隔,  ""  表示无分隔直接连接。

–  ite  :是要进行连接操作的可迭代对象,其中的元素必须都是字符串类型(若不是,需先转换

)。

2.1.2 原理:

#str.join()
print('-'.join(['2021','1','1'])) #列表
print('-'.join('abcde'))  #字符串
print('-'.join(('2021','1','1'))) #元组
print('-'.join({'2021','1','1'}))  #集合
print('-'.join({'name':'ouwen','age':'18'}))  #字典

输出结果:

2021-1-1
a-b-c-d-e
2021-1-1
1-2021
name-age

2.2 str.replace(old,new[ , count])

2.2.1 语法:

str.replace(old,new[ , count])  :  用于字符串替换,返回值是替换后的新字符

old : 需要替换的值

new : 替换后的新值

count : 替换几个值,默认是全部替换

2.2.2原理:

#str.replace(old,new[,count])
txt = '大家好我是一个大聪明,我非常的聪明'
#要求:将字符串里面的 聪明 改为 笨蛋
print(txt.replace('聪明','笨蛋'))
#要求:只需要替换 第一个笨蛋
print(txt.replace('聪明','笨蛋',1))

输出结果:

大家好我是一个大笨蛋,我非常的笨蛋
大家好我是一个大笨蛋,我非常的聪明

2.3 str.strip/lstrip/rstrip

str.strip/lstrip/rstrip  : 去除字符串两边或者某个方向的指定字符   l:左边  r:右边 

2.3.1 原理:

user_name = '  用户名  '
#去除左右两边的空格
print(user_name.strip('  '))
#去除左边的空格
print(user_name.rstrip('  '))
#去除右边的空格
print(user_name.lstrip('  '))

输出结果:

用户名
  用户名
用户名  

2.4 str.lower()/upper()

str.lower()/upper()  :  将字符串中的英文全部转换为大写(upper)或者小写(lower)

2.4.1 原理:

txt = 'abcDEF'

print(txt.upper())
print(txt.lower())

输出如果:

ABCDEF
abcdef

2.5 str.split()

2.5.1 语法:

str.split(sep=None, maxsplit=-1)  :

–  sep (可选):分隔符(如  , 、 – 、空格等),默认值为  None (按任意空白符分割,连续空白

视为一个分隔符)。

–  maxsplit (可选):最大分割次数,默认值为  -1 (无限制)。

str.rsplit(sep=None, maxsplit=-1)  : 从右往左切割

1. 默认分割(按空白符)

s = "hello world python"
print(s.split())  # 输出: ['hello', 'world', 'python']

– 无参数时,按空格、制表符( \t )、换行符( \n )等空白符分割,自动忽略连续空白。
 
2. 指定分隔符

s = "a,b,c,d"
print(s.split(','))  # 输出: ['a', 'b', 'c', 'd'](按逗号分割)

3. 限制分割次数

s = "a-b-c-d"
print(s.split('-', 2))  # 输出: ['a', 'b', 'c-d'](最多分割2次)

2.5.2 原理:

#split : 从左往右切割
print('a,b,c,d'.split(','))
print('a-b-c-d'.split('-'))

print('a-b-c-d'.split('-',1))
print('a-b-c-d'.split('-',2))

#rstrip : 从右往左切割
print('a,b,c,d'.rsplit(','))
print('a,b,c,d'.rsplit(',',2))

输出结果:

['a', 'b', 'c', 'd']
['a', 'b', 'c', 'd']
['a', 'b-c-d']
['a', 'b', 'c-d']
['a', 'b', 'c', 'd']
['a,b', 'c', 'd']

2.6 str.find(sub[, start[, end]])

2.6.1 语法:

str.find(sub[, start[, end]]) : 用于在字符串中查找指定子字符串的位置

–  sub :必填参数,表示要查找的子字符串。

–  start (可选):指定开始查找的起始位置索引,默认为0,即从字符串开头开始查找。

–  end (可选):指定查找的结束位置索引(不包含该位置),默认为字符串的长度,即查找到字

符串末尾。
 
返回值:
 
– 如果找到指定的子字符串,返回子字符串在原字符串中第一次出现的起始位置索引。

– 如果没有找到,则返回 -1。

2.6.2 原理:

txt = 'abcdefgabcabc'
# 找到字符串中b字符所在的下标位置
print(txt.find('b'))
print(txt.find('x'))

print(txt.find('a',5))
print(txt.find('a',5,8))

2.7 str.index(sub[, start[, end]]

2.7.1 语法:

str.index(sub[, start[, end]]  : 在Python中, index() 也是字符串的一个常用方法,和 find() 方法

功能有相似之处,但也存在差异

–  sub :必填参数,代表要查找的子字符串。

–  start (可选):指定开始查找的起始位置索引,默认值为0,即从字符串开头开始查找。

–  end (可选):指定查找的结束位置索引(不包含该位置),默认值为字符串的长度,即查找到

字符串末尾。
 
返回值
 
– 当在字符串中找到指定的子字符串时,返回子字符串在原字符串中第一次出现的起始位置索引。

– 当找不到时会报错

2.7.2 原理:

print(txt.index('a'))
print(txt.index('b',1))
print(txt.find('a',5,8))
print(txt.find('x'))

输出结果:

0
1
7
ValueError  #报错

2.7.3 与findf的区别:

– 返回值差异: find() 方法在找不到指定子字符串时返回 -1 ;而 index() 方法在找不到指定子字符

串时会抛出 ValueError 异常。例如:
 

s = "hello world"
print(s.find("java"))  # 输出: -1
print(s.index("java"))  # 会抛出 ValueError: substring not found

 – 应用场景差异:如果只是想简单判断子字符串是否存在,并且希望以一个特定值( -1 )表示不

存在的情况,使用 find() 方法更合适;如果确定子字符串一定存在,希望在找到时获取其位置索

引,并且在子字符串意外不存在时让程序抛出异常以便及时发现问题,那么 index() 方法会更符合

需求。

2.8 str.count(sub[, start[, end]])

2.8.1 语法:

str.count(sub[, start[, end]])  : 用于统计指定子字符串在字符串中出现的次数

–  sub :要统计的子字符串,为必填参数。

–  start (可选):起始位置索引,默认为0,即从字符串开头开始统计。

–  end (可选):结束位置索引(不包含该位置),默认为字符串的长度,即统计到字符串末尾。
 
返回值:
 
– 返回指定子字符串在字符串中出现的次数。

– 没有就返回 0

2.8.2 原理:

data = 'aaabbbcccabc'
print(data.count('a'))
print(data.count('x'))

输出结果:

4
0

2.9 str.isdigit()

2.9.1 语法:

str.isdigit()   : 用于判断字符串中的所有字符是否都是纯数字(0 – 9)

返回值:
 
如果字符串中的所有字符都是数字且至少有一个字符,返回 True ;否则,返回 False 。

2.9.2 原理:

s1 = "123"
s2 = "abc"
s3 = "1a2"
s4 = ""
print(s1.isdigit())  
print(s2.isdigit()) 
print(s3.isdigit())  
print(s4.isdigit())

输出如果:

True
False
False
False

2.10 str.isalpha()

2.10.1语法:

str.isalpha()  : 用于判断字符串中的所有字符是否都是纯字母

返回值:
 
如果字符串中的所有字符都是字母且至少有一个字符,返回 True ;否则,返回 False 。

2.10.2 原理:

s1 = "abc"
s2 = "123"
s3 = "a1b"
s4 = ""
print(s1.isalpha()) 
print(s2.isalpha())
print(s3.isalpha())
print(s4.isalpha())  

输出结果:

True
False
False
False

字符串常见的内置函数就讲完了,希望大家能理解,接下来还会讲解列表,元祖,集合有关的内置

函数。希望大家能关注主播,感谢大家的观看!

作者:多雨西雅图

物联沃分享整理
物联沃-IOTWORD物联网 » Python数据类型方法详解(一)

发表回复