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

数据类型的内置方法

时间:2022-09-29 20:34:18浏览次数:49  
标签:内置 jason res 数据类型 字符串 l1 print 方法

今日内容回顾

  • 数据类型内置方法理论
  • 整形相关操作
  • 浮点型相关操作
  • 字符串相关操作
  • 列表相关操作
  • 可变类型与不可变类型

今日内容回顾详情

数据类型内置方法理论

我们之前所学习的每一种数据类型本身都含有一系列的操作方法,内置方法是其中最多的(自带功能)

在python中数据类型调用内置方法的统一句式为>>>:句点符

格式:绑定的字符串的变量名,字符串内置方法

​ 'Jason'.字符串内置方法

​ str.字符串内置方法

整形内置方法与操作

1.类型转换(将其他数据类型转换成整型)

int(其他数据类型)

浮点型可以直接转 字符串必须满足内部是纯数字才可以

2.进制转换

十进制转其他进制

print(bin(100) )   # 转成二进制用bin
print (oct(100))   #转成八进制用oct
print(hex(100) )#转成十六进制用hex

数字的开头如果是0b则为二进制 0b则为八进制 0x则为十六进制
其他进制转十进制

转成十进制全部都用int
print(int(0b1100100))
print(int(0o144))
print(int(0x64))
在后面加上数,是为了告诉别人这输出的是几进制
print(int("0b1100100", 2))
print(int("0o144", 8))
print(int("0x64", 16))

3.python自身对数字的敏感度较低(精确度比较低)

比如当你输出的数字是11.11时,他会直接打印输出11,并且不会四舍五入。

浮点型内置方法与操作

1.类型转换

float(其他数据类型)

字符串里面可以允许出现一个小数点 其他都必须是纯数字

2.还是精度比较的低,如果需要进准的计算需要借助与模块numpy....

字符串内置方法与操作

1.类型转换:

str(其他数据类型)

可以转换任何数据类型(只需要在前后加上引号即可)

2.必须要掌握的方法

2.1索引取值(起始位0开始 超出范围直接报错)

s1 = 'hello wrild'
print (s1[0])  # 输出的是第一位
print(s1[-1] ) #输出的是倒数第一位  ,支持负数,从末位开始

2.2切片操作

print(s1[1:5])    #顾头不顾尾 从索引1一直到切取到索引4
print(s1[-1:-5]) #  默认顺序是从左到右
print(s1[-5:-1])  # 默认顺序是从左到右

2.3修改切片方向(间隔)

print(s1[1:5:1] ) #默认为1
print(s1[1:5:2])    #默认为1
print(s1[-1:5:-1]) 
print(s1[:] # 不写数字就默认全部都要
print(s1[2:])  # 从索引2开始往后都要
print(s1[:5])  #从索引0开始要到4
print(s1[::2])  #从索引0开始要到4

2.4统计字符串中的字符的个数

print(len(s1)) #统计字符串用len

2.5移除字符串首尾指定的字符

删除首位空格是.strip(),代码如下:
user_nume = input('user_name>>>:').strip()
if user_nume == 'jason':
    print('登陆成功')
#.strip() #括号内不写 默认移除收尾的空格

指定删除:左边.lstrip('字符串'), 右边.rstrip('字符串')
res1 = '$jason$'
print(res1.strip('$'))   #将所有'$'全部删掉
print(res1.lstrip('$'))  #将左边'$'全部删掉
print(res1.rstrip('$'))  #将右边'$'全部删掉

2.6切割字符串中指定的字符

切割字符串的内置方法是  .split(),split()里面也可以加上你想切割掉的字符串
res ='jason|123|read'
print(res.split('|'))  #这个打印会以一个列表的形式表现出来

res ='jason|123|read'
name, pwd, hobby = res.split('|') #解压赋值
print(res.split('|',maxsplit=1))  #['jason', '123|read']  从左往右切指定个数
print(res.split('|',maxsplit=1))  # ['jason|123', 'read']  从右往左切指定个数
maxsplit:最大分割次数

2.7字符串格式化输出

字符串输出的内置是format
format方法一:相当于占位符
res = 'my name is {} my age is {}'.format('jason',23)
print(res)
format方法二:可以用索引取值并支持反复使用
res = 'my name is {0} my age is {1} {0} {1}'.format('jason', 23)
print(res)
format方法三:占位符见名知意
res = 'my name is {name} my age is {age} {name} {age}'.format(name='jason',age= 23)
print(res)
format 方法四:用f在你想打印的字符串前面加上
name = input('name:')
age = input('age:')
res = f'my name is {name} my age is {age}'
print(res)

3.字符串需要了解的方法

3.1大小写相关

res = 'hEllO WoRld'
print(res.upper()) #把res的字符串里面的字符全部变成大写 .upper()
print(res.lower()) #把res的字符串里面的字符全部变成小写 .lower()
代码实例:
code = 'u4R87'
print('展示给用户看的图片验证码', code)
confirm_code = input('请输入验证码').strip()
if confirm_code.upper() == code.upper():# 把全部变成大写进行判断
    print('验证码正确')

判断输入的字符串是否是全部大写 .isupper()
判断输入的字符串是否是全部小写 .islower()
代码实例如下:
     res = 'hello world'
    print(res.isupper())  # 判断字符串是否是纯大写  False
     print(res.islower())  # 判断字符串是否是纯小写  True

3.2判断字符串中是否是纯数字

判断是不是纯数字的内置方法 是 .isdigit 它会判断是不是数字是就是Ture 不是就是false
guess_age = input('guess_age>>>:').strip()
if guess_age.isdigit():
    guess_age = int(guess_age)
else:
    print('年龄都不知道怎么输吗???')

3.3替换字符串中指定的内容

替代字符串的内置方法的是  .raplace
代码的表现形式:
res = 'my name is jason jason jason jason'
print(res.replace('jason','tony'))
print(res.replace('jason','tony',2))     #从左到右替换指定的个数内容

3.4字符串拼接

字符串拼接的内置方法 .join('数据','数据','数据')
代码如下:
print('|'.join(['tony','123']))   #参加拼接的数据值必须是字符串

3.5统计指定字符出现的次数

统计用的内置方法  .count('你想统计的字符串')
代码如下:
res = 'hello world'
print(res.count('l'))

3.6判断字符串的开头或者结尾

判断字符串的开头的是.startswith()
判断字符串的结尾的是.endswith()
代码如下:
开头:
res = 'jason say hello'
print(res.startswith('jason'))
print(res.startswith('j'))
print(res.startswith('jas'))  #只要是开头'j'的字符串都可以
结尾:
res = 'jason say hello'
print(res.endswith('o'))
print(res.endswith('llo'))
print(res.endswith('hello'))

3.7其他方法补充

res = 'helLO wORld hELlo worLD'
print(res.title())  # 打印的字符串首字母大写
print(res.capitalize())  #第一个字符串大写,剩下的小写
print(res.swapcase())  # 把大的变成小写,小写的变成大写
print(res.index('O'))#类似索引
print(res.find('O'))
区别:
print(res.index('c'))  # 找不到直接报错
print(res.find('c'))  # 找不到默认返回-1

列表内置方法及操作

1.类型转换

list(其他数据类型)
只要是能被for循环的数据类型都可以转成列表
print(list('hello'))  #字符串
print(list({'name': 'jason', 'pwd': 123})) #字典
print(list((1, 2, 3, 4))) #元组
print(list({1, 2, 3, 4, 5}) ) #集合
    

2.需要掌握的方法

2.1索引取值 (正负数,正是左到右,负是右到左)

l1 = [111, 222, 333, 444, 555, 666, 777, 888]
print(l1[0])
print(l1[-1])

2.2切片操作 (和字符串一样)

l1 = [111, 222, 333, 444, 555, 666, 777, 888]
print(l1[1:5])    #顾头不顾尾 从索引1一直到切取到索引4
print(l1[:])  

2.3间隔数 (和字符串一样)

l1 = [111, 222, 333, 444, 555, 666, 777, 888]
print(l1[1:5:1] ) #默认为1
print(l1[1:5:2])    #默认为1
print(l1[-1:5:-1]) 
 print(l1[:] # 不写数字就默认全部都要
 print(l1[2:])  # 从索引2开始往后都要
print(l1[:5])  #从索引0开始要到4
print(l1[::2])  #从索引0开始要到4

2.4统计列表的数据值的个数
print(len(l1)) #统计字符串用len
2.5数据值修改

l1 = [111, 222, 333, 444, 555, 666, 777, 888]
l1[0] = 123
 print(l1)

2.6列表添加数据值

添加数据值的内置方法是append,insert,
append方法一:尾部追加数据值
代码如下:
l1 = [111, 222, 333, 444, 555, 666, 777, 888]
l1.append('字符串')  #添加字符串
 print(l1)  # [111, 222, 333, 444, 555, 666, 777, 888, '字符串']
 l1.append(['jason', 'kevin', 'jerry'])  #添加列表
 print(l1)  # [111, 222, 333, 444, 555, 666, 777, 888, ['jason', 'kevin', 'jerry']]
insert方法二:任意位置插入数据值
  代码如下:
 l1.insert(0, 'jason')
 print(l1)
 l1.insert([11, 22, 33, 44])
 print(l1)  # [111, [11, 22, 33, 44], 222, 333, 444, 555, 666, 777, 888]
extend方法三:
ll1 = [11, 22, 33]
ll2 = [44, 55, 66]
ll1.extend(ll2)
补充:
extend =for循环+append
ll1 = [11, 22, 33]
ll2 = [44, 55, 66]
 for i in ll2:
    ll1.append(i)
    print(ll1)

2.7删除列表数据

方式1:通用的删除关键字del
del l1[0]
print(l1)
 方式2:remove
l1.remove(444)  # 括号内填写数据值
print(l1)
方式3:pop
l1.pop(3)  # 括号内填写索引值
print(l1)
l1.pop()  # 默认尾部弹出数据值
print(l1)
pop和rmeove的区别:pop是把数据弹出还可以找回使用一次如何删除,而remove是直接删除:
代码如下:
res = l1.pop(3)
print(res)  # 444
res1 = l1.remove(444)
print(res1)  # None

2.8排序

排序的内置方法是sort
ss = [54, 99, 55, 76, 12, 43, 76, 88, 99, 100, 33]
ss.sort()  # 默认是升序  因为默认为false
print(ss)
ss.sort(reverse=True) # 把这个改为True
print(ss)  #就改为降序

3.9统计列表中某个数据值出现的次数

l1 = [111, 222, 333, 444, 555, 666, 777, 888]
print(l1.count(111))

3.10颠倒列表顺序

颠倒列表的顺序的内置方法是reverse
代码如下:
l1 = [111, 222, 333, 444, 555, 666, 777, 888]
l1.reverse()
 print(l1)

可变类型与不可变类型

可变类型的的原理:
例如列表在调用内置方法之后修改的就是自身 并没有产生一个新的结果
不可变类型的原理:
字符串在调用内置方法之后并不会修改自己 而是产生了一个新的结果

可变类型:值改变 内存地址不变
  如:
 l1 = [11, 22, 33]
 print(l1)
 print(id(l1))
 l1.append(44)
 print(l1)
 print(id(l1))

不可变类型:值改变 内存地址肯定变
 如:
res = '$$hello world$$'
print(res)
print(id(res))
res.strip('$')
print(res)
print(id(res))

标签:内置,jason,res,数据类型,字符串,l1,print,方法
From: https://www.cnblogs.com/zjl248/p/16742971.html

相关文章

  • 数据类型内置方法理论
    今日内容详细数据类型内置方法理论我们之前所学习的每一种数据类型本身都含有一系列的操作方法,内置方法是其中最多的(自带的功能)在python中数据类型调用内置方法的统......
  • 数据类型内置方法与操作
    目录一.数据类型内置方法理论二.整型int的内置方法与操作1.类型转换2.进制数转换三.浮点型内置方法与操作1.类型转换2.针对布尔值的特殊情况四.字符串float的内置方法与操......
  • FormData对象的使用方法
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metahttp-equiv="X-UA-Compatible"content="IE=edge"><metaname="viewport"conten......
  • Javadoc转换chm帮助文档的四种方法总结
     1)将现有的html文件集(比如api)制作成chm文档​​​​​​http://www.blogjava.net/lishunli/archive/2010/01/07/308618.html​​ 我建议使用javadoc2chm,看上去最......
  • java的八大基本数据类型和类型扩展
    学习中老师提到的一道经常考的笔试题java的数据类型分为两大类 (一)基本类型分为数值类型和boolean类型数值类型:byte占一个字节范围:-127-128short占两个字节范......
  • C#交换方法指针
    被引用的dll是testDllFr.dll,其代码为:namespacetestDLLFr{publicclassTestA{publicstaticvoidTestAM(){Console.Write......
  • java要学到的关键字和数据类型
    java要学到的关键字在取类名和方法名时不能用这些关键字当名字//例子:在类名处就能写和上面一样的publicclass类名publicclassHelloWorld{  publicstaticvoid......
  • C++ 调用python方法
    主流方法将python程序编程文本形式的动态链接库,在c/c++程序中调用其中定义的函数。本质上是在c++中启动了一个python解释器,由解释器对python相关的代码进行执行,执行......
  • ffmpeg5.0+h264+h265 windows下编译方法
    目录前言一,源码包下载1.ffmpeg下载2.下载x264代码3.下载x265代码二,MSYS2安装三,安装cmake工具四,代码编译1.编译x2642.编译x2653.编译ffmpeg五,功能验证1.x264......
  • 数据类型内置方法
    数据类型内置方法之前我们所学习的每一种数据类型本身就含有一系列的操作方法,内置方法是其中最多的。以字符串为例,介绍一下调用内置方法的格式:print('jason'.upper())......