9、python正式篇 数据内置类型和方法
时间:2022-09-29
本文章向大家介绍9、python正式篇 数据内置类型和方法,主要内容包括一、数据类型内置方法理论、1、什么是数据内置方法、2、如何调用数据内置方法、二、整型(int)内置方法与操作、1、类型转换、2、进制数转换、三、浮点型(float)内置方法与操作、四、字符串(str)内置方法与操作、使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
一、数据类型内置方法理论
1、什么是数据内置方法
数据类型是用来记录事物状态的,而事物的状态是不断变化的(如:一个人年龄的增长(操作int类型) ,单个人名的修改(操作str类型),学生列表中增加学生(操作list类型)等),这意味着我们在开发程序时需要频繁对数据进行操作,为了提升我们的开发效率, python针对这些常用的操作,为每一种数据类型内置了一系列方法。
2、如何调用数据内置方法
在python中数据类型调用内置方法的统一句式为>>>:句点符
方式1:
数据值. # 数据值加句点符(句号)
方式2:
变量名. #绑定数据值的变量名加句点符(句号)
方式3:
str. # 数据类型加句点符(句号)
二、整型(int)内置方法与操作
1、类型转换
将其他类型的数据转换成整型
int(其他类型数据值)
条件:
1、浮点型可直接转(取整,小数点后弃除)
2、字符串必须满足内部全是纯整数值才可以
3、其余非数字类型无法转整型
2、进制数转换
1、十进制转其它进制数:
转二进制:
print(bin(需要转换十进制数值)) # 二进制数字0b开头
转八进制:
print(oct(需要转换十进制数值)) #八进制数字0c开头
转十六进制:
print(hex(需要转换十进制数值)) #十六进制0x开头
2、其它进制数转十进制:
二进制转十进制:
print(int(需要转换的二进制数值))
八进制转十进制:
print(int(需要转换的八进制数值))
十六进制转十进制:
print(int(需要转换的十六进制数值))
字符串类型数值进行数据转换时,需要括号内注明进制数
print(int(需要转的进制数,注明进制数类型))
三、浮点型(float)内置方法与操作
1、类型转换
float(其他类型数据值)
条件
1、整数型数据可直接转
2、字符串类型转换
1、必须是纯数字
2、数字内只可含有一个小数点
四、字符串(str)内置方法与操作
1、类型转换
关键词:str(需要转换类型的数据值)
条件:
1、可转任意类型的数据值(只需在前后加引号)
2、必须要掌握内置方法
1、索引取值
①正向取值
# 生成一个字符串
a1 = 'holl world'
# 索引取值第四位
print(a1[3])
# 输出结果
l # 输出结果
②末向取值
# 生成一个字符串
a1 = 'holl world'
# 输入负数,从末尾取值
print(a1[-3])
# 输出结果
r
2、切片操作
①正向切片
# 生成一个字符串
a1 = 'holl world'
# 切片0-3位 (顾头不顾尾)
print(a1[0:4])
# 输出结果
holl
②修改切片间隔
# 生成一个字符串
a1 = 'holl world'
# 切片0-10位,每格5位取值
print(a1[0:10:5])
# 输出结果
hw
③修改切片方向
# 生成一个字符串
a1 = 'holl world'
"""
取值区间默认从左至右
切片倒数第三个数值到倒数第一个数值
"""
print(a1[-3:-1])
# 输出结果
rl
④切片操作其他使用方法
# 生成一个字符串
a1 = 'holl world'
# 不写数字就默认全部都要
print(a1[:])
# 从索引2开始往后都要
print(a1[2:])
# 从索引0开始往后要到4
print(a1[:5])
# 默认切片所有数值,间隔两格取值一次
print(a1[::2])
3、统计字符串中字符个数
关键词:len()
使用方式:
# 生成一个字符串
a1 = 'holl world'
# 输入关键字 len(需要统计数字的变量名(包含空格),并打印
print(len(a1))
# 输出结果
10
4、移除字符串首尾指定字符
①表现方式
关键词:strip()
使用方式:
# 设置一个数据值,绑定变量名
name = '@@kangkang@@'
# 关键字 strip() ,去除变量名首尾相同字符
print(name.strip('@'))
# 关键字 lstrip() ,去除变量名左侧开头相同字符
print(name.lstrip('@'))
# 关键字 rstrip() ,去除变量名右侧结尾相同字符
print(name.rstrip('@'))
# 对应输出结果
kangkang
kangkang@@
@@kangkang
②具体用法
'''
设置一个变量名,绑定并获取用户输入
在获取用户输入后,添加去除首位指定字符关键字
strip() 括号内不填,默认去除“空格”
'''
name = input('请输入您的用户名>>>:').strip()
# 设置条件,用户输入关键字,即使首位带空格,任能通过验证
if name == 'kangkang':
print('验证通过')
5、切割字符串中指定字符
关键词:split()
使用方式:
# 设置一个字符串,用管道符(|)隔开关键字,并绑定变量名
stud_name = 'kang|zhang|zhao'
# 使用切割关键词 split() , 括号内填入分割符号
print(stud_name.split('|'))
# 输出结果 默认为列表
['kang', 'zhang', 'zhao']
1、可在关键字前加L或R,来控制切割方向
2、可在关键字后括号内输入maxsplit加数字,控制切割数量
例1:
# 从左侧开始切割,切割数量为1
print(stud_name.split('|', maxsplit=1))
# 输出结果
['kang', 'zhang|zhao']
例2:
# 从右侧开始切割,切割数量为2
print(stud_name.rsplit('|', maxsplit=1))
# 输出结果
['kang|zhang', 'zhao']
### 6、字符串格式化输出
```python
关键词:format()
1、字符串格式化输出类似于%s\%d占位符
2、可以索引取值,并支持反复使用
```
使用方式:
1、等价于占位符
'''
1、设置一段介绍,后方添加关键词
2、format后方括号按顺序填入需要的关键字
'''
message = 'my name is {} my age is {}'.format('kangkang', 18)
# 打印介绍
print(message)
# 输出结果
my name is kangkang my age is 18
2、索引取值
'''
1、设置一段介绍,关键字部位用大括号括住
2、介绍后方添加format关键词
3、format()括号内填入信息
4、支持反复使用,需要介绍处括号内按索引取值方式填入数字
'''
res = 'my name is {0} my age is {1} {0} {1}'.format('康康', 18)
# 打印
print(res)
# 打印结果
my name is 康康 my age is 18 康康 18
3、见名知意
'''
1、设置一段介绍,关键字部位用大括号括住并注明关键字
2、介绍后方添加format关键词
3、format()括号内按等号方式填入信息
'''
res = 'my name is {name} my age is {age}'.format(name= 'kangk', age = 18)
# 打印
print(res)
# 输出结果
my name is kangk my age is 18
4、常规用法--配合input使用
# 获取用户输入信息
name = input('请输入姓名>>>:')
age = input('请输入年龄>>>:')
age = int(age)
hobby = input('请输入爱好>>>:')
# 设置一段自我介绍,关键字部位使用{}括起来,并在括号内填入对应变量名
message = f'my name is {name}, my age is {age}, my hobby is {hobby}'
# 打印
print(message)
# 用户输入信息
请输入姓名>>>:kangkang
请输入年龄>>>:18
请输入爱好>>>:打球
# 打印结果
my name is kangkang, my age is 18, my hobby is 打球
### 7、大小写转换、纯文字判断
```python
关键词:
大写:upper()
小写:lower()
1、可以将转换数据大小写
2、可以将用户输入的大小写进行转换,进行统一
使用方式:
1、常规使用
# 输入一串英文字符(大小写穿插),绑定变量名
res = 'helLo woRlD'
# 使用大写转换关键词,并打印
print(res.upper())
# 使用小写转换关键词,并打印
print(res.lower())
# 输出结果
HELLO WORLD
hello world
2、input用法
# 设置验证码
code = '0aBcD'
# 设置给用户看到的验证码
print('请按图输入验证码:', code)
# 获取用户输入
confirm_code = input('请输入验证码:').strip()
# 设置条件,并使用关键词统一大小写
if confirm_code.upper() == code.upper():
print('验证码正确')
# 打印结果
请按图输入验证码: 0aBcD
请输入验证码:0abcd
验证码正确
3、判断字符串是否纯大、小写
# 用法于与上述基本一致
代码表示:
isupper() 判断字符串是否是纯大写 False
islower() 判断字符串是否是纯小写 True
4、判断字符串是否纯文字
代码表示:
isdigit() 判断字符串是否是纯文字 True/False
input使用方式
# 获取用户输入
guess_age = input('guess_age>>>:').strip()
# 判断文字是否纯数字
if guess_age.isdigit():
# 转换数字为整数类型
guess_age = int(guess_age)
else:
# 验证用书输入有误
print('您输入的有误,请重新输入')
8、替换字符串指定内容
关键词 : replace()
使用方式:
1、常规使用
# 自定义一串文字
res = 'my mane is kangkang'
# 使用关键词 在后方括号内添加需要替换的关键字,并填入重新修改的关键字
print(res.replace('kangkang', 'xiaoli'))
# 打印结果
my mane is xiaoli
2、指定替换个数
# 关键词(需要需改的,修改后的,修改的个数)
代码表现:
res = 'my mane is kangkang,kangkang'
print(res.replace('kangkang', 'xiaoli',1))
9、字符串的拼接
关键词:join()
使用方式:
# 参与拼接的数据值必须是字符串
# 输入拼接的字符,关键词,输入需要拼接的数据值库
print('|'.join(['123', '456', '789']))
# 打印结果
123|456|789
10、统计字符出现的次数
关键词:count()
使用方式:
# 在关键词后方括号内输入需要统计的字符
res = 'hello world'
print(res.count('l'))
# 打印结果
2
11、判断字符串开头或结尾
关键词:
开头:startswith()
结尾:endswith()
使用方法:
# 关键词后括号内输出猜测的字符
res = 'jason say hello'
print(res.endswith('o')) #开头
print(res.endswith('o')) #结尾
12、其他用法补充
关键词
1、title() 变量名内所有单词首字母大写
2、capitalize() 变量名内因为仅首字母有大写
3、swapcase() 变量名内所有单词大小写互换
4、index() 判断字符所在位置,仅能判断第一位 ,若无报错
5、index() 判断字符所在位置,仅能判断第一位 ,若无False
五、列表(list)内置方法与操作
1、类型转换
关键词:list(其他数据类型)
条件:
ps:能够被for循环的数据类型都可以转成列表
print(list('hello'))
print(list({'name': 'jason', 'pwd': 123}))
print(list((1, 2, 3, 4)))
print(list({1, 2, 3, 4, 5}))
2、需要掌握方法
1、索引取值
与字符串基本一致
11 = [111, 222, 333, 444, 555, 666, 777, 888]
print(l1[0])
print(l1[-1])
2、切片操作
与字符串基本一致,切片方向与字符串基本一致
11 = [111, 222, 333, 444, 555, 666, 777, 888]
print(l1[0:5])
print(l1[:])
3、数值修改
11 = [111, 222, 333, 444, 555, 666, 777, 888]
l1[0] = 123 # 0位数据值修改为123
4、统计列表数据个数
与字符串方法基本一致
关键词:len()
11 = [111, 222, 333, 444, 555, 666, 777, 888]
print(len(l1)
5、列表添加数据值
①、尾部添加
关键词:append()
11 = [111, 222, 333, 444, 555, 666, 777, 888]
l1.append(999) # 括号内填写需要插入的数据值
print(l1)
# 输出结果 [111, 222, 333, 444, 555, 666, 777, 888, 999]
②、任意位置添加
关键词:insert()
11 = [111, 222, 333, 444, 555, 666, 777, 888]
l1.insert(0, '999') # 按索引插入数值
print(l1)
# 输出结果 [999, 111, 222, 333, 444, 555, 666, 777, 888]
6、扩展列表 合并列表
关键词:extend()
# 设置两个列表,赋予变量名
a1 = [11, 22, 33]
b2 = [44, 55, 66]
# 使用关键词合并列表
a1.extend(b1)
# 输出结果
[11, 22, 33, 44, 55, 66]
7、删除列表数据
①方式一:
关键字:del
使用方法:
a1 = [111, 222, 333, 444, 555, 666, 777, 888]
del a1[0] # 按索引填写需要删除的数值
②方式二:
关键词:remove()
使用方法:
a1 = [111, 222, 333, 444, 555, 666, 777, 888]
a1.remove(444) # 填写需要删除的数值
# 特点:
1、括号内数据直接删除
③方式三:
关键词:pop()
使用方法:
a1 = [111, 222, 333, 444, 555, 666, 777, 888]
a1.pop(3) # 括号内填写索引值
# 特点:
1、按索引弹出数值
1、括号内不填写默认弹出尾部数值
2、弹出数值不会被直接删除,可设置变量名接收
8、列表排序
关键词:
1、升序:sort()
2、降序:sort(reverse=True)
使用方法:
count = [55, 33, 11, 44, 22]
count.sort() # 默认是升序
count.sort(reverse=True) # 降序
# 输出结果
[11, 22, 33, 44, 55]
[55, 44, 33, 22, 11]
9、统计列表中某个数值出现次数
关键词:count()
使用方法:
# 设置一个数据值列表,绑定变量名字
ct_ = [11, 22 ,11, 44, 11]
print(ct.count(11)) # 输入需要统计的数值
10、颠倒列表顺序
关键词:reverse()
使用方法:
# 设置一个数据值列表,绑定变量名字
ct_ = [11, 22 ,33, 44, 55]
ct_.reverse() # 设置需要颠倒的列表
# 打印结果
[55, 44, 33, 22, 11]
六、可变与不可变类型
1、可变类型
列表、集合、字典(可以进行更改,并且更改后物理地址不会发生改变)
2、不可变类型
数字、字符串、元组(不可以进行更改,更改后就是一个新的对象了,物理地址发生了变化)
原文地址:https://www.cnblogs.com/kangssssh/p/16743103.html
- 以太坊·物流场景初探
- Python接口自动化-3-POST请求
- 【Python环境】Python中的结构化数据分析利器-Pandas简介
- JAVA中使用Jedis操作Redis
- Tomcat搭建文件服务器
- Windows下SLmail邮件服务器缓冲区溢出理解及实验
- java使用mina和websocket通信
- 【机器学习】10 种机器学习算法的要点
- 写一个BASIC认证的https协议
- java发送邮件功能,以发送qq邮件为例
- spring boot加载复杂的yml文件获取不到值的问题
- JUC包下的CountDownLatch,CyclicBarrier,Semaphore
- java队列,ArrayBlockingQueue
- 多线程使用wait和notify做生产者消费者模型导致线程全部假死
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 【Pyecharts】2014-2019年高考数据可视化~
- 25.Python的循环与递归
- 26.Python文件内容的迭代
- 28.Python中对象的特性
- 如何基于jackson动态序列化指定字段
- c/c++补完计划(五): 平衡二叉树和二叉搜索树
- 【原创】Java并发编程系列30 | ThreadLocal
- c/c++补完计划(六): 语法糖lambda
- 从别人的代码中学习golang系列--03
- Flink写出数据到HBase的Sink实现
- 「MoreThanJava」Day 4:面向对象基础
- RTSP协议视频平台EasyNVR接入EasyNVS通道不显示任何数据怎么处理?
- RTSP协议视频平台EasyNVR接入视频综合管理平台EasyNVS可以自由修改配置吗?
- 使用Azure人脸API对图片进行人脸识别
- 视频综合管理平台EasyNVS显示的rtsp和rtmp穿透地址错误如何解决?