day3 python数据类型转换及变量的缓存机制
类型转换
1,强制类型转换
1.1 number的转换(int,float,bool,complex)
num1 = 10
num2 = 10.6
num3 = True
num4 = 3 + 4j
1.1.1 int强制转换成整型
res = int(num1) #10
res = int(num2) #10
res = int(num3) #1 False =>0
res = int(num4) #error
1.1.2 float强制转换成浮点型
res = float(num1) #10.0
res = float(num2) #10.6
res = float(num3) #1.0 False =>0.0
res = float(num4) #error
1.1.3 complex强制转换成复数
res = complex(num1) #10 + 0j
res = complex(num2) #10.6 + 0j
res = complex(num3) #1 + 0j False =>0j
res = complex(num4) #3 + 4j
1.1.4 bool强制转换成布尔值
False:0,0.0,0j,False,"",[],(),set(),{},None
1.1.5 总结
res = int() #默认创建该数据类型的默认值
1.2容器类型的转换(str,list,tuplr,set,dict)
strvar = '我爱中国'
listvar = [0,'name',]
tuplevar = (0.0,'我爱python',[1,5+3j,],)
setvar = {0,1,2,3,4,5,5,}
dictvar = {"name":"bajie","age":18,}
1.2.1 str (number/container)通吃
res = str(listvar)
#将原类型最外层加"listvar"
print(res1,tpye(res1))
#repr 原型化输出字符串
prinr(repr(res1))
1.2.2list强制转换成列表
'''
str:将每一个字符单独作为一个元素放到列表
dice:将字典的键作为一个元素放到列表
其他容器:替换例如(1,) -> [1,]
'''
1.2.3tuple强制转换成元组
'''
str:将每一个字符单独作为一个元素放到元组
dice:将字典的键作为一个元素放到元组
其他容器:替换例如[1,] -> (1,)
'''
1.2.4set强制转换成集合(无序,去重)
'''
str:将每一个字符单独作为一个元素放到集合
dice:将字典的键作为一个元素放到集合
其他容器:替换例如[1,2,] -> {2,1,}
'''
1.2.5dict强制转换成字典
1.2.5.1二级容器(list,tuple,set,dict)
# 二级容器
listvar = [1,[2,]]
setvar = {'name',(1,2,)}
dictvar = {True:"中国",{"nums":[1,2,3,4,5,6],}}
# 四级容器
lisvar = [1,[2,3,["name",[True,]]]]
1.2.5.2dici强制转换等长的二级容器
# 等长(内容器不推荐集合,键值不确定)and TWO元素
datalist = [[1,2],["name","bajie"]]
dataset = {(1,2),{"name","bajie"}}
res = dict(datalist) # {1: 2, 'name': 'bajie'}
res = dict(dataset) # {1: 2, 'bajie':'name'}
# 奇葩写法
datastr = [[a,1],"b2"] # {'a': 1, 'b': '2'}
2 自动类型转换
'''
精度从低到高进行转换 :bool - int - float - complex
'''
res1 = True + 1 # 2
res2 = True + 2j # 1 + 2j
res3 = 1 + (2 + 2j) # 1 + 2j
res4 = 0.2 + 2j # 0.2 + 2j
res5 = False + 1 + 2.5 + 2j # 3.5 + 2j
3变量的缓存机制(针对python3.6前)
3.1 number部分
(同一文件,模块)
#1 整型 (-5 ~ 正无穷 <小数据池:id地址相同>)
#2 浮点型(非负数)
#3 bool值相同
#4 复数类型(只有虚数部分)
(不同文件,模块)
#1 整型 (-5 ~ 256 <小数据池:id地址相同>)
3.2容器部分
#1 strvar = "相同字符串"
#2 空元组
day3 python数据类型转换及变量的缓存机制的更多相关文章
- python小白——进阶之路——day2天-———变量的缓存机制+自动类型转换
# ###同一文件,变量的缓存机制 ''' -->Number 部分 1.对于整型而言,-5~正无穷范围内的相同值 id一致 2.对于浮点数而言,非负数范围内的相同值 id一致 3.布尔值而言, ...
- python中变量的缓存机制
同一文件中, 变量的缓存机制 (在此范围内的相同值内存地址一样) Number: int: -5 ~ 正无穷 float: 非负数 bool: ...
- Python中的代码块及其缓存机制、深浅copy
一.代码块及其缓存机制 代码块 一个模块.一个函数.一个类.一个文件等都是一个代码块:交互式命令下,一行就是一个代码块. 同一个代码块内的缓存机制(字符串驻留机制) 机制内容:Python在执行同一个 ...
- python 基础之变量存储缓存机制与数据驻留小数据池
一:变量存储的缓存机制 在同一文件(模块)里,变量存储的缓存机制 (仅对python3.x版本负责),那么 --对于Number (int bool float complex) 1.对于整型而言,- ...
- 20.Python类型转换,Python数据类型转换函数大全
虽然 Python 是弱类型编程语言,不需要像 Java 或 C 语言那样还要在使用变量前声明变量的类型,但在一些特定场景中,仍然需要用到类型转换. 比如说,我们想通过使用 print() 函数输出信 ...
- Python 小数据池和代码块缓存机制
前言 本文除"总结"外,其余均为认识过程:3.7.5: 总结: 如果在同一代码块下,则采用同一代码块下的缓存机制: 如果是不同代码块,则采用小数据池的驻留机制: 需要注意的是,交互 ...
- Python数据类型转换函数
数据类型转换函数 函 数 作 用 int(x) 将 x 转换成整数类型 float(x) 将 x 转换成浮点数类型 complex(real[,imag]) 创建一个复数 str(x) 将 x 转换为 ...
- Eclipse-运行符-数据类型转换-环境变量配置
1.能够使用Eclipse快捷键 ctrl + / 单行注释:再按一次则取消: ctrl + shift + / 多行注释: ctrl + shift + \ 取消多行注释: ctrl + ...
- 变量存储缓存机制 Number (int bool float complex)
# ###变量存储的缓存机制(为了节省空间) #Number (int bool float complex) # (1) int -5~正无穷范围内 var1 = 18 var2 = 18 var1 ...
随机推荐
- mysql日期和时间类型
TIME 类型 TIME 类型用于只需要时间信息的值,在存储时需要 3 个字节.格式为 HH:MM:SS.HH 表示小时,MM 表示分钟,SS 表示秒. TIME 类型的取值范围为 -838:59:5 ...
- OSI七层模型工作过程&&输入URL浏览器的工作过程(超详细!!)
从以下10个方面深入理解输入URL后整个模型以及浏览器的工作流程! 目录 1.HTTP 2.DNS 3.协议栈 4.TCP 5.IP 6.MAC 7.网卡 8.交换机 9.路由器 10.服务器与客户端 ...
- Mac App 破解之路八 病毒程序分析
本人使用MacBooster 7 扫出了几个未知程序. JMJ56 这个程序. 在finder中打开发现是一个shell脚本 调用了python 9NKb0 就是python脚本使用. 只不过是 ...
- 3D 立体动态图 代码:
CSS样式: <style>*{ margin:0; padding:0;}body{ max-width: 100%; min-width: 100%; height: 100%; ba ...
- 阿里巴巴开源canal 工具数据同步异常CanalParseException:parse row data failed,column size is not match for table......
一.异常现象截图 二.解决方式: 1.背景 早期的canal版本(<=1.0.24),在处理表结构的DDL变更时采用了一种简单的策略,在内存里维护了一个当前数据库内表结构的镜像(通过desc ...
- caffe的python接口学习(3)训练模型training
如果不进行可视化,只想得到一个最终的训练model, 那么代码非常简单,如下 : import caffe caffe.set_device(0) caffe.set_mode_gpu() solve ...
- Unable to load configuration. - action - file:/C:/Program%20Files/Apache%20Software%20Foundation/Tomcat%209.0/webapps/Teacher04/WEB-INF/classes/struts.xml:9:54
发布一个struts2项目的时候tomcat显示下面这个错误,我的本能感觉就是我的struts.xml或者web.xml写错了,可是我字母找都没发现,于是百度一番,可是我对那些人的回答表示怀疑,感觉应 ...
- java语言基础(四)_面向对象_类_对象_封装_构造
面向对象 Java语言是一种面向对象的程序设计语言,而面向对象思想是一种程序设计思想,我们在面向对象思想的指引下,使用Java语言去设计.开发计算机程序. 这里的对象泛指现实中一切事物,每种事物都具备 ...
- 猿灯塔:最详细Dubbo相关面试题!
1.Dubbo是什么? Dubbo是阿里巴巴开源的基于 Java 的高性能 RPC 分布式服务框架,现已成为 Apache 基金会孵化项目. 面试官问你如果这个都不清楚,那下面的就没必要问了. 官网: ...
- 面试WEB前端如何才能通过?
从事web前端工作七年时间,因为一直是非常热爱编程的,从小就有兴趣,大学就是学计算机的,技术应该比一般同龄的都要好一些,今天我想给大家讲述一下,目前想要做web前端开发,面试成功应该如何去学习,要具备 ...