首页 > 其他分享 >数据类型的内置方法

数据类型的内置方法

时间:2022-09-29 22:45:18浏览次数:48  
标签:内置 name s1 数据类型 索引 字符串 l1 print 方法

一.数据类型的内置方法

数据类型的内置方法就是:数据类型自带的操作方法或功能

调用数据类型的内置方法句式为:句点符

数据类型.方法名()

eg:
    name = '张三'
 1) 变量名.字符串的内置方法()
 2) 数据值.字符串的内置方法()

1.整型相关操作方法

1)类型转换

int(待转换的数据)

1) 浮点型可以转整型,'只要小数点前面的,不做四舍五入'
   print(int(11.11)) # 11

2) 字符串可以转整型,'但是字符串内部必须是【整数】才可以'
   print(int('11'))  # 11

3) 布尔值的使用
   print(int(True))  # 1
   print(int(False)) # 0

4) 其他类型转换会报错
2)进制数转换
【十进制转其他进制】:
     # 十 >> 二
      print(bin(100))  # 0b1100100  
     # 十 >> 八
      print(oct(100))  # 0o144      
     # 十 >> 十六
      print(hex(100))  # 0x64        
    '''
    0b 二进制数的标识
    0o 八进制数的标识
    0x 十六进制数的标识
    数字开头没有任何标识的就是十进制
    '''
【其他进制转十进制】:
     #会自动识别转换
      print(int(0b1100100))  # 100
      print(int(0o144))      # 100
      print(int(0x64))       # 100
     #人为主动转换进制数
      print(int('0b1100100',2))  # 100
      print(int('0o144', 8))     # 100
      print(int('0x64', 16))     # 100

2.浮点型相关操作方法

1)类型转换

float(待转换的数据)

1) 整数型可以转浮点型,'在数字后会跟一个小数点'
   print(float(11))    # 11.0

2) 字符串可以转浮点型,'但是字符串内部必须是数字(整、浮点)才可以'
   print(int('11.11')) # 11.0
    
3) 布尔值的使用
   print(float(True))  # 1.0
   print(float(False)) # 0.0

4) 其他类型转换会报错
2)数学运算易出错
a = 23.00
b = 1.2
c = a * b
print(c) # 27.599999999999998

'''
由以上举例得出:python对数字运算精确度很低,容易出错!
如需要精准的计算需借助其他模块!
'''

3.字符串相关操作方法

字符串在调用内置方法后会产生新的值 具体需看【可变类型与不可变类型】

1)类型转换

str(待转换的数据)

#1.所有数据类型都可以转换成字符串
str(123)
str(True)
str({'name':'张三'})
...
#2.给所有数据类型前后加引号也可以转换成字符串
2)常用内置方法
1.索引取值(单个字符)
'''
1.索引值是从0开始(顾头不顾尾)
2.超出索引范围会直接报错
3.索引可跟负数,[-1]为取最后一个
'''

s1 = 'abcde'
print(s1[0])   # a
print(s1[-1])  # e
2.切片取值(多个字符)
s1 = 'abcde'
print(s1[:])      # abcde 取所有值
print(s1[:3])     # abc   取索引0~索引2的值
print(s1[1:3])    # bc    取索引1~索引2的值
print(s1[-2:-1])  # d     取倒数第二(包含)~倒数第一(不包含)的值
3.修改切片间隔
s1 = 'abcde'
print(s1[0:5:1]) # abcde 取索引0~索引4的值且间隔1
print(s1[0:5:2]) # ace   取索引0~索引4的值且间隔2
print(s1[::2])   # ace   取所有值且间隔2
4.统计字符个数

len()统计字符个数

s1 = 'abcde'
print(len(s1))  # 5
5.移除首位指定字符

strip()常用于移除空格

name = '$张三$'

1)移除首尾所有指定字符
  print(name.strip('$'))   # 张三   
2)移除首指定字符
  print(name.lstrip('$'))  # 张三$ 
3)移除尾指定字符
  print(name.rstrip('$'))  # $张三  
4)括号内不写默认移除空格
  print(name.strip())      # 张三   
  '常用于获取用户输入移除用户不小心打的空格'
6.切割字符串中指定字符

split('')当字符串中有多个重复字符分割不同数据时,可切割该指定字符以列表形式显示。

a = 'aaa|bbb|ccc'

1)切割所有指定字符
  print(a.split('|'))  # ['aaa', 'bbb', 'ccc'] 
  #注意:此处可以用【解压赋值】依次赋值给不同变量名!
2)从左往右切指定个数
  print(a.split('|',maxsplit=1))  #['aaa', 'bbb|ccc'] 
3)从右往左切指定个数
  print(a.rsplit('|',maxsplit=1)) #['aaa|bbb', 'ccc'] 
7.字符串大小写相关

upper() lower() isupper() islower()常用于验证码

a = 'aBcDe'

1)将字符串全部转成大小写
  print(a.upper())  # ABCDE
  print(a.lower())  # abcde
2)判断字符串是否为纯大写或小写(True/False)
  print('AAA'.isupper())
  print('aaa'.islower())
8.字符串格式化输出
方式1):等价于%s 没优势
     lx = '我的名字是{},我的年龄是{}'
     print(lx.format('张三',18))
     #结果为:我的名字是张三,我的年龄是18
方式2):支持索引取值,可以重复使用
     lx = '我的名字是{0},我的年龄是{1}{0}{1}'
     print(lx.format('张三',18))
     #结果为:我的名字是张三,我的年龄是18张三18
方式3):支持关键字取值(按K取值),可重复使用
     lx = '名字是{name}{name}年龄是{age}'
     print(lx.format(name='张三',age=18))
     #结果为:名字是张三张三年龄是18
方法4):最常用!!!*****************
     name = '张三'
     age = 18
     print(f'名字是{name}年龄是{age}{age}')
     #结果为:名字是张三年龄是1818
9.判断字符串中是否是纯数字

isdigit()判断是否为纯数字。常用于获取用户输入校验等

print('123'.isdigit())  # True
print('123a'.isdigit()) # False
3)其他内置方法
1.替换字符串中指定内容

replace()括号内写被 替换的字符 与 替换的字符

a='a a a b b b'

1)从左往右替换所有指定内容
  print(a.replace('a','c'))
  #结果为:c c c b b b
2)从左往右替换指定个数的内容
  print(a.replace('a','c',1))
  #结果为:c a a b b b
2.字符串的拼接

''.join([a,b])引号中可以加中间拼接的字符,不写则不添加,a与b分别是要拼接的数据值

a='张'
b='三'

方式1):直接用+号,但是易占用较多内存
    print(a+b)  # 张三
方式2):直接*该字符串实现拼接多个
    print(a*2)  # 张张
方式3):建议使用join方法!切可以在拼接中插入指定字符
    print(''.join([a,b]))   # 张三
    print('|'.join([a,b]))  # 张|三
3.统计指定字符出现次数

count()统计个数

a='aabcdef'
print(a.count('a')) #2
4.判断字符串开头或结尾

startswith()判断开头是否为某个值

endswith()判断结尾是否为某个值

a='hello'

#判开头是否是'he'
  print(a.startswith('he')) # True
#判断结尾是否是'lo'
  print(a.endswith('lo')) # True
5.查找某个字符对应索引值

index()存在则返回索引值,只会返回左边数第一个,不存在则报错

find()存在则返回索引值,不存在则报错

a='helloh'

#获取'h'的索引值 不存在则报错
  print(a.index('h')) # 0
#获取'a'的索引值 不存在则返回-1
  print(a.find('a'))  # -1
6.正文相关转换首字母大写

title()将字符串中所有单词的首字母大写

capitalize()将字符串第一个字母大写

a = 'my name is zhangsan'
1)将所有单词的首字母大写
  print(a.title())
  #结果为:My Name Is Zhangsan
2)将字符串第一个字母大写
  print(a.capitalize())
  #结果为:My name is zhangsan

4.列表相关操作方法

列表在调用内置方法后会修改自身具体需看【可变类型与不可变类型】

1)类型转换

list(其他数据类型)

能够被for循环的数据类型都可以转成列表

支持for循环的数据类型有:列表、字符串、字典、元组、集合

字符串、字典、元组、集合:

print(list('123'))  # ['1', '2', '3']
print(list({'name':'张三','age':'18'}))  # ['name', 'age']
print(list((1,2,3)))  # [1, 2, 3]
print(list({1,2,3}))  # [1, 2, 3]
2)常用内置方法
1.索引取值(单个数据值)
'''
1.索引值是从0开始(顾头不顾尾)
2.超出索引范围会直接报错
3.索引可跟负数,[-1]为取最后一个
'''
l1 = [1, 2, 3]
print(l1[0])   # 1
print(l1[-1])  # 3
2.切片取值(多个数据值)
l1 = [1,2,3,4,5]
print(l1[:])      # [1,2,3,4,5] 取所有值
print(l1[:3])     # [1,2,3]     取索引0~索引2的值
print(l1[1:3])    # [2,3]       取索引1~索引2的值
print(l1[-2:-1])  # [4]         取倒数第二(包含)~倒数第一(不包含)的值
3.修改切片间隔
l1 = [1,2,3,4,5]
print(l1[0:5:1]) # [1,2,3,4,5] 取索引0~索引4的值且间隔1
print(l1[0:5:2]) # [1,3,5]     取索引0~索引4的值且间隔2
print(l1[::2])   # [1,3,5]     取所有值且间隔2
4.统计列表数据值个数
l1 = [1,2,3,4,5]
print(len(l1))  # 5
5.修改数据值
l1 = [1,2,3,4,5]
l1[0] = 'z'
print(l1)
#结果为:['z',2,3,4,5]
6.添加数据值
1)尾部追加数据值
  l1 = [1, 2, 3, 4, 5]
  l1.append('zzz')
  print(l1)
  #结果为:[1, 2, 3, 4, 5, 'zzz']
2)任意位置插入数据值(在索引几的位置插入什么数据)
  l1 = [1, 2, 3, 4, 5]
  l1.insert(1,'zzz')
  print(l1)
  #结果为:[1, 'zzz', 2, 3, 4, 5]
3)扩展列表、合并列表
  l1=[1,2,3]
  l2=[4,5,6]
方式一:不建议使用
  print(l1+l2)
  #结果为:[1,2,3,4,5,6]
方式二:底层是用for+append实现的
  l1.extend(l2)
  print(l1)
  #结果为:[1,2,3,4,5,6]
7.删除数据值
l1 = [1,2,3,4,5]
1)通用删除 del:(删除某个索引对应的值)
  del l1[0]
  print(l1)
  #结果为:[2, 3, 4, 5]
2)指定删除 remove:(彻底删除指定的数据值)
  l1.remove(2)
  print(l1)
  #结果为:[1, 3, 4, 5]
3)取出后删除 pop:(可以把取出的值赋值给一个变量)
  '括号内不写默认最后一个,0代表第一个,1代表第二个'
  l1.pop()
  print(l1)
  #结果为:[1, 2, 3, 4]
  a = l1.pop()
  print(a)
  #结果为:5
  pop常用于观展人数中,xxx退出观战
8.查看数据值对应索引值
l1=[1,2,3,4]
print(l1.index(1))
#结果为:0
9.统计某个数据值出现的次数
l1=[1,1,2,3,4,5]
print(l1.count(1))
#结果为:2
10.数据值排序
l1=[4,2,5,1,2,3]
1)升序:
  l1.sort()
  print(l1)
  #结果为:[1, 2, 2, 3, 4, 5]
2)降序:
  l1.sort(reverse=True)
  print(l1)
  #结果为:[5, 4, 3, 2, 2, 1]
11.反转列表数据值顺序

不等同于降序排序!

l1=[4,2,5,1,2,3]
l1.reverse()
print(l1)
#结果为:[3, 2, 1, 5, 2, 4]
12.两个列表比较
a = [99,11]
b = [11,22,33]
print(a > b)
#结果为:True

l1 = ['a','b']
l2 = ['A','B']
print(l1 > l2)
#结果为True
'''
1.两个列表在比较大小时,是按照索引0来互相比较。
2.不同数据类型之间无法比较
3.a比A大的原因是因为中间涉及到字符编码。a=97 A=65
'''

二.可变类型与不可变类型

可变类型 不可变类型
字典、列表、集合 字符串、整型、浮点型、元组
值改变,内存地址不变(改自身) 值改变,内存地址也变(产生新的结果)
1.【不可变类型】:
 #值改变,内存地址也变(产生新的结果)
s1='$$jason$$'
s1.strip('$')

'由于产生的是新的结果,所以打印原字符串没有变化'
print(s1)  
#结果为:$$jason$$

'因为产生了新的结果,所以可以打印出来(可直接打印出来,也可以赋值一个变量名接收后打印)''
print(s1.strip('$'))  
#结果为:jason


2.【可变类型】:
 #值改变,内存地址不变(改自身)
l1=[11,22,33]
l1.append('z')

'由于改的是自身 所以打印原本的列表就是修改后的列表'
print(l1)  
#结果为:[11,22,33,'z']

'因为没有产生新的结果,所以打印出来的是None'
print(l1.append('z'))  
#结果为:None

标签:内置,name,s1,数据类型,索引,字符串,l1,print,方法
From: https://www.cnblogs.com/oreoz/p/16743364.html

相关文章

  • 数据类型内置方法
       每个数据类型都拥有不同的内置功能,这些功能都保存在已经编译好的关键字内,可以直接引用,这些关键字就是内置方法。  数据类型调用内置方法的统一句式为>>>:句点......
  • 数据类型内置方法
    数据类型内置方法数据类型内置方法理论学习的每一种数据类型本身都含有一系列的操作方法,内置方法是其中最多的(自带的功能)在python中数据类型调用内置方法的统一句式为:......
  • 数据类型的内置方法
    数据类型内置方法理论之前所学习的每一种数据类型,他们本身都含有一系列的操作方法,内置方法是其中最多的(也就是本身自带的功能)ps:在python中数据类型调用内置方法的统一......
  • 学习方法(1)
    不管起点如何,每个人的进步与成就的差异,在于学习和思考的方法。面对一项新技术的时候,我们怎样去学习才能循序渐进,最终理解得深刻?让我们先把可供自学的资料列出来......
  • 数据类型内置方法
    数据类型内置方法理论我们之前所学习的每一种数据类型本身都含有一系列的操作方法,内置方法是其中最多的(自带的功能)在python中数据类型调用内置方法的统一句式为>>>:......
  • 003.JavaScript的数据类型
         ......
  • 列表内置方法及操作
    今日内容数据类型的内置方法理论我们之前所学习的每一种数据类型本身都含有一些列的操作方法内置方法是其中最多的(自带功能)在python中数据类型调用内置方法的同意句......
  • js中返回对象键名的方法
    一、通过forin循环方法letobj={a:1,b:2,c:3}letkey=null;for(keyinobj){console.log(key);//分别输出abc}二、通过Object.keysconstobj={a:1......
  • 方法的重载
    方法的重载重载就是在一个类中,有相同的函数名称,但形参不同的函数。方法的重载的规则:方法名称必须相同。参数列表必须不同(个数不同、或类型不同、参数排列顺序......
  • ptyhon入门基础(数据内置方法)
    今日内容概要数据类型内置方法理论、整型相关的操作浮点型相关的操作字符串相关操作列表相关操作可变与不可变类型整型的内置方法与操作1.什么是类型的转换?类型......