浅谈python数据类型及其操作


Posted in Python onMay 25, 2021

一、 Number 数字

浅谈python数据类型及其操作

1.内置函数:需要导入math
2.随机数函数:需要导入random 模块
3.三角函数:需要导入math模块
4.数学常量:需要导入math模块

#1.数据函数的使用
#==========================
#内置函数
print(abs(-10))   #10绝对值
print(round(4.56789,2)) #4.57 使用四舍五入的方式保留小数点后两位

a = [10,30,20,80,50]
print(max(a))   #80 最大值
print(min(a))   #10 最小值


#需要导入math
import math
print(math.ceil(2.3))      #3 进一取整
print(math.floor(2.99999))  #2 舍去取整

10
4.57
80
10
3

#2.随机数函数
#=============================
#需要导入random 模块
import random
print(random.random())  #随机一个0~1的小数

print(random.choice(['aaa','bbb','cccc']))   #随机获取一个值

#指定范围的随机
print(random.randrange(10))  #随机0~9的一个值
print(random.randrange(4,10))  #随机4~9的一个值
print(random.randrange(0,10,2))  #随机4~9的一个值

b = [1,2,3,4,5,6]
random.shuffle(b)  #将容器内的值顺序打乱
print(b)

0.6045140519996484
cccc
3
4
0
[1, 3, 4, 6, 5, 2]

#3.三角函数
#需要导入math模块
print(math.sin(90))
print(math.cos(0))

0.8939966636005579
1.0

#4.数学常量
#需要导入math模块
print(math.pi) #圆周率
print(math.e)  #自然常数

3.141592653589793
2.718281828459045

二、String 字符串

浅谈python数据类型及其操作

# 1.字符流(str 字符串) <=> 字节流(bytes 字符串、二进制)之间的转换

#字符流转换为字节流
str = "zhangsan"
b1 = str.encode(encoding="utf-8")
print(b1)

b2 = bytes(str,encoding="utf+8")     #结果中,只要是b开头的都叫字节流
print(b2)

#字节流转成字符流
print(b1.decode(encoding="utf-8"))  #由字节转成字符
print(bytes.decode(b2,encoding="utf-8"))

b'zhangsan'
b'zhangsan'
zhangsan
zhangsan

#2.转义符的使用
print("ab\\cde\n\rfg\thijk\"lmnopq")

浅谈python数据类型及其操作

#3. 字符串的格式化:format  %
print("a={};b={}".format(10,20))  #用括号作占位符。
print("a={1};b={0}".format(10,20))  # 指定索引号代表第几参数
print("a={0};b={0}".format(10))

print("name={name:10};age={age}".format(age=20,name="lisi"))   #name:10 表示占10个宽度。
print("name={name:<10};age={age}".format(age=20,name="lisi"))   #小于号:靠左边;大于号:靠右边。
print("{:.2f}".format(5.6789))   # .2f表示保留小数后两位

name="zhangsan"
print(f"name={name}")

浅谈python数据类型及其操作

#4.字符串的内建函数
#==============================
name = "ZhangSan"
print(name,name.upper(),name.lower())     #字符串的大小写
print("字符串长度:",len(name))   
print("统计字符串中an出现的次数:",name.count('an'))
print("字符串替换: ",name.replace("San","wuji"))
print("10:20:30:40".split(":"))  #字符串拆分(列表)

浅谈python数据类型及其操作

# 字符串查找
str = "zhangsanfang"
print(str.find("an"))   #从头开始查找 ,找不到返回-1
print(str.rfind("an"))   #从末尾开始查找 ,找不到返回-1
print(str.index("an"))  #从头查找,找不到报错

print(" aaa ".strip())   #去除字符串两侧多余空格(或指定字符)
print(" aaa ".lstrip())   #去除字符串左侧多余空格(或指定字符)
print(" aaa ".rstrip())   #去除字符串右侧多余空格(或指定字符)

浅谈python数据类型及其操作
浅谈python数据类型及其操作
浅谈python数据类型及其操作
浅谈python数据类型及其操作
浅谈python数据类型及其操作
浅谈python数据类型及其操作
浅谈python数据类型及其操作

三、List 列表

浅谈python数据类型及其操作

# 1. 列表的定义
list1 = [] #定义一个空列表
list2 = list() #定义一个空列表
list3 = ['python','java','php',10,20]  #定义列表
list4 = [1,2,3,4,5,6,7]  #定义列表

print(list4)

list4[3] = 400  #修改
print(list4)

del list4[5]   #删除
print(list4)

[1, 2, 3, 4, 5, 6, 7]
[1, 2, 3, 400, 5, 6, 7]
[1, 2, 3, 400, 5, 7]
10 20 30 40 50
10 20 30 40 50

# 2.列表的遍历
a = [10,20,30,40,50]

#使用for ... in 遍历
for i in a:
    print(i,end= " ")
print()

#使用while循环遍历
i = 0
while i <len(a):
    print(a[i],end= " ")
    i += 1
print()

10 20 30 40 50
10 20 30 40 50

#遍历等长的二阶列表
b = [["aa","AAA"],["bb","BBB"],["cc","CCC"]]
for v1,v2 in b:
    print(v1,v2)
      
#遍历不规则二阶列表
c = [[10,20],[30,40,50],[60,70],[80,90,100,110,120]]
for v in c:
    for i in v:
        print(i,end=" ")
    print()

浅谈python数据类型及其操作

# 4. 列表的方法 (非常重要)
a = ['zhangsan','lisi']
a.append('wangwu')                #在列表的尾部新增值
a.extend(['zhaoliu','xiaolin'])   #在列表尾部添加多个值
a.insert(3,"qqq")                 #在指定位置插入一个值
print(a)

b = [1,2,3,3,2,1,4,5]
print(b.count(1))                 #统计1在列表中出现的次数
print(b.index(5))                 #5出现的位置

print(a.pop())                    #最后一个值
a.remove("zhangsan")              #删除指定值
print(a)

a.reverse()                      #颠倒顺序
print(a)

b.sort()   #升序
print(b)

b.clear()  #清空
print(b)

浅谈python数据类型及其操作

a = [10,20,30]
b = a
c = a.copy()         #浅复制:复制一个列表
print(id(a),id(b),id(c))
a[1] = 200
print(a)
print(b)
print(c)

浅谈python数据类型及其操作

浅谈python数据类型及其操作
浅谈python数据类型及其操作
浅谈python数据类型及其操作

四、Tuple 元组

浅谈python数据类型及其操作

#========================================
#1. 定义元组的方式
tup0 = ()    #定义一个空元组 或者变量 = tuple() (没有意义,因为元组不能被修改)
tup1 = ('Google','Python',1997,2000)
tup2 = (1,2,3,4,5)
tup3 = "a","b","c","d"

#输出元组:
print("tup1[0]: ",tup1[0])
print("tup2[1:5]:",tup2[1:5])

#注意下面这种定义下不加逗号,类型为整型
tup4 = (50)
print(type(tup4))

#以下修改元组元素操作是非法的。
#tup1[0] = 100

#元组中的元素值是不允许删除的,但可使用del语句来删除整个元组
del tup0;

tup1[0]: Google
tup2[1:5]: (2, 3, 4, 5)
<class ‘int'>

#2. 元组的遍历
#===========================
a = (10,20,30,40,50)

#使用for ... in 遍历
for i in a:
    print(i)
 
# 使用while遍历
i = 0
while i<len(a):
    print(a[i])
    i += 1

10
20
30
40
50
10
20
30
40
50
10 20
30 40
50 60

#遍历等长二级元组
b = ((10,20),(30,40),(50,60))
for v1,v2 in b:
    print(v1,v2)
    
#遍历不等长二级元组
b = ((10,20),(30,40,50,60),(70,80,90))
for v in b:
    for i in v:
        print(i,end=" ")
    print()

10 20
30 40
50 60
10 20
30 40 50 60
70 80 90

# 4. 元组的操作符:
#====================================
a = (1,2,3)
b = (4,5,6,7)
print(len(a))
print(a+b)
print(a*2)
print(6 in b)  #判断一个值是否在一个元组中

#获取
print(b[2]) 
print(b[-2])
print(b[1:])
print(b[1:3])

3
(1, 2, 3, 4, 5, 6, 7)
(1, 2, 3, 1, 2, 3)
True
6
6
(5, 6, 7)
(5, 6)

浅谈python数据类型及其操作

浅谈python数据类型及其操作

五、Sets集合

浅谈python数据类型及其操作

# 1.集合的基础操作
#====================================
#定义集合的方式:
#集合的定义
set1 = set()  #定义一个空的集合
set2 = {1,2,3}

#增加一个元素
set1.add(5)

#增加多个:参数可以是列表或元组
set1.update([5,6,7,8])

#删除某个值(参数为元素值,没有会报错)
set2.remove(1)
set2.discard(50)  #删除不存在的值不会报错

#查:无法通过下标索引
#改:不可变类型无法修改元素

#清空集合
set2.clear()

a = {10,20,30}
b = {20,50}
print(a - b)    #a和b的差集
print(a | b)    #a和b的并集
print(a & b)    #a和b的交集
print(a ^ b)    #a和b中不同时存在的元素

# 2. 集合的遍历
#======================================
a = {10,20,30,40,50}
#使用for ... in 遍历
for i in a:
    print(i)
    
#注:没有while遍历,因为没有排序,
    
#遍历等长二级集合
b = {(10,20),{30,40},(50,60)}
for v1,v2 in b:
    print(v1,v2)

浅谈python数据类型及其操作

# 4. 集合的操作符
a = {1,2,3}
print(len(a))  #3 集合长度
print(6 in a)  #判断一个值是否在一个集合中

3
False

浅谈python数据类型及其操作

六、Dictionary 字典 (非常重要)

浅谈python数据类型及其操作

#字典是另一种可变容器模型,且可存储任意类型对象

# 1. 字典的基础操作:
#==============================
#定义字典的方式:
#字典的定义
d0 = {}  #或dict()   #定义一个空的字典
d1 = {'name':'python','age':17,'class':'first'}

#输出子字典中的信息
print("d1['name']: ",d1['name'])  #python
print("d1['age']: ",d1['age'])    #17

#输出错误信息:KeyError  
# print("d1['alice']:",d1['alice'])

#修改和添加内容     
d1['age'] = 18;           #key存在则更新age
d1['school'] = '云课堂'   # 不存在则添加信息
print(d1)

#删除信息
del d1['name']   #删除键'name'一个元素值
d1.clear()       #清空字典
del d1

浅谈python数据类型及其操作

#2. 字典的遍历
#===================================
d1 = {'name':'python','age':17,'class':'first'}
#使用for...in 遍历(默认遍历键)
for k in d1:
    print(k,"=>",d1[k])

#遍历键和值(使用items())
for k,v in d1.items():
    print(k,"===>",v)

浅谈python数据类型及其操作

# 3. 推倒式的使用
#================================
a = [1,2,3,4,5,6,7,8]
#遍历列表a中的值i ,并判断是否是偶数,并形成新的列表保留下来
b = [i for i in a if i%2==0]   #for i in a ,循环a列表,拿这个列表的值; if i%2==0 这个值若能被2整除,拿出来; 前面的i表示新生成一个列表
print(b)

[2, 4, 6, 8]

stu = {'name':'zhangsan','age':20,'sex':'man'}
#将当前stu字典遍历形成一个新的字典,去掉了age
s1 = {k:v for k,v in stu.items()}      #for k ,v in stu.items()遍历字典;k:v形成新的字典;if k != "age" 作判断
s2 = {k:v for k,v in stu.items() if k !="age"}      #for k ,v in stu.items()遍历字典;k:v形成新的字典;if k != "age" 作判断

print(s1)
print(s2)

浅谈python数据类型及其操作

# 字典的操作方法
#=================================
stu = {'name':'zhangsan','age':20,'sex':'man'}
print(stu.items())  #以列表方式返回当前字典的键值对
print(stu.keys())
print(stu.values())   

print(stu.get("name"))    #
print(stu.get("iphone",None)) #获取指定key的值,若无返回None

print(stu.pop('age'))   #弹出指定key的值,表示字典中没有了此内容
print(stu)

print(stu.popitem())  #随机弹出一对信息(移除了),默认最后一个。
print(stu)

stu.clear()

浅谈python数据类型及其操作

#容器的拷贝(浅拷贝和深度拷贝)
#浅拷贝
a = {"name":"zhanngsan","data":[10,20,30]}
b = a.copy()   #浅拷贝
a["name"] = 'lisi'
a["data"][1] = 200
print(a)
print(b)

浅谈python数据类型及其操作

#导入一个深度拷贝模块
import copy
a = {"name":"zhanngsan","data":[10,20,30]}
b = copy.deepcopy(a)   #深度拷贝
a["name"] = 'lisi'
a["data"][1] = 200
print(a)
print(b)

浅谈python数据类型及其操作
浅谈python数据类型及其操作

到此这篇关于浅谈python数据类型及其操作的文章就介绍到这了,更多相关python数据类型内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python小技巧之批量抓取美女图片
Jun 06 Python
详解Python的迭代器、生成器以及相关的itertools包
Apr 02 Python
Python中DJANGO简单测试实例
May 11 Python
总结Python中逻辑运算符的使用
May 13 Python
Django的session中对于用户验证的支持
Jul 23 Python
Python使用functools模块中的partial函数生成偏函数
Jul 02 Python
详解Python中for循环是如何工作的
Jun 30 Python
python编程使用selenium模拟登陆淘宝实例代码
Jan 25 Python
详解解决Python memory error的问题(四种解决方案)
Aug 08 Python
python接口调用已训练好的caffe模型测试分类方法
Aug 26 Python
python tkinter图形界面代码统计工具(更新)
Sep 18 Python
基于Python实现视频的人脸融合功能
Jun 12 Python
对Keras自带Loss Function的深入研究
May 25 #Python
pytorch中的model=model.to(device)使用说明
May 24 #Python
解决pytorch-gpu 安装失败的记录
May 24 #Python
如何解决.cuda()加载用时很长的问题
一劳永逸彻底解决pip install慢的办法
May 24 #Python
Django实现翻页的示例代码
May 24 #Python
pytorch--之halfTensor的使用详解
You might like
全国FM电台频率大全 - 5 内蒙古自治区
2020/03/11 无线电
php数组的一些常见操作汇总
2011/07/17 PHP
Yii实现自动加载类地图的方法
2015/04/01 PHP
PHP中PDO连接数据库中各种DNS设置方法小结
2016/05/13 PHP
php模拟post提交请求调用接口示例解析
2020/08/07 PHP
JavaScript的面向对象(一)
2006/11/09 Javascript
Javascript中判断对象是否为空
2015/06/10 Javascript
详细分析使用AngularJS编程中提交表单的方式
2015/06/19 Javascript
JavaScript关于提高网站性能的几点建议(一)
2016/07/24 Javascript
jQuery获取select选中的option的value值实现方法
2016/08/29 Javascript
ES6实现的遍历目录函数示例
2017/04/07 Javascript
JS中利用swiper实现3d翻转幻灯片实例代码
2017/08/25 Javascript
用 Vue.js 递归组件实现可折叠的树形菜单(demo)
2017/12/25 Javascript
Node层模拟实现multipart表单的文件上传示例
2018/01/02 Javascript
原生js实现Flappy Bird小游戏
2018/12/24 Javascript
详解微信图片防盗链“此图片来自微信公众平台 未经允许不得引用”的解决方案
2019/04/04 Javascript
微信小程序 调用远程接口 给全局数组赋值代码实例
2019/08/13 Javascript
解决layer.confirm快速点击会重复触发事件的问题
2019/09/23 Javascript
vue:el-input输入时限制输入的类型操作
2020/08/05 Javascript
[02:02:38]VG vs Mineski Supermajor 败者组 BO3 第一场 6.6
2018/06/07 DOTA
Python之pandas读写文件乱码的解决方法
2018/04/20 Python
Linux(Redhat)安装python3.6虚拟环境(推荐)
2018/05/05 Python
解决os.path.isdir() 判断文件夹却返回false的问题
2019/11/29 Python
解决pycharm中的run和debug失效无法点击运行
2020/06/09 Python
Python列表嵌套常见坑点及解决方案
2020/09/30 Python
Django contrib auth authenticate函数源码解析
2020/11/12 Python
python如何修改文件时间属性
2021/02/05 Python
法国珠宝店:CLEOR
2017/01/29 全球购物
7 For All Mankind官网:美国加州洛杉矶的高级牛仔服装品牌
2018/12/20 全球购物
美国第一大药店连锁机构:Walgreens(沃尔格林)
2019/10/10 全球购物
CAD制图人员的自荐信
2014/02/07 职场文书
销售员岗位职责
2014/06/09 职场文书
小学教师暑期培训心得体会
2016/01/09 职场文书
《家庭教育》读后感3篇
2019/12/18 职场文书
微信小程序用户授权最佳实践指南
2021/05/08 Javascript
python 详解turtle画爱心代码
2022/02/15 Python