类型转换

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数据类型转换及变量的缓存机制的更多相关文章

  1. python小白——进阶之路——day2天-———变量的缓存机制+自动类型转换

    # ###同一文件,变量的缓存机制 ''' -->Number 部分 1.对于整型而言,-5~正无穷范围内的相同值 id一致 2.对于浮点数而言,非负数范围内的相同值 id一致 3.布尔值而言, ...

  2. python中变量的缓存机制

    同一文件中, 变量的缓存机制 (在此范围内的相同值内存地址一样) Number: int:                -5 ~ 正无穷 float:             非负数 bool:  ...

  3. Python中的代码块及其缓存机制、深浅copy

    一.代码块及其缓存机制 代码块 一个模块.一个函数.一个类.一个文件等都是一个代码块:交互式命令下,一行就是一个代码块. 同一个代码块内的缓存机制(字符串驻留机制) 机制内容:Python在执行同一个 ...

  4. python 基础之变量存储缓存机制与数据驻留小数据池

    一:变量存储的缓存机制 在同一文件(模块)里,变量存储的缓存机制 (仅对python3.x版本负责),那么 --对于Number (int bool float complex) 1.对于整型而言,- ...

  5. 20.Python类型转换,Python数据类型转换函数大全

    虽然 Python 是弱类型编程语言,不需要像 Java 或 C 语言那样还要在使用变量前声明变量的类型,但在一些特定场景中,仍然需要用到类型转换. 比如说,我们想通过使用 print() 函数输出信 ...

  6. Python 小数据池和代码块缓存机制

    前言 本文除"总结"外,其余均为认识过程:3.7.5: 总结: 如果在同一代码块下,则采用同一代码块下的缓存机制: 如果是不同代码块,则采用小数据池的驻留机制: 需要注意的是,交互 ...

  7. Python数据类型转换函数

    数据类型转换函数 函 数 作 用 int(x) 将 x 转换成整数类型 float(x) 将 x 转换成浮点数类型 complex(real[,imag]) 创建一个复数 str(x) 将 x 转换为 ...

  8. Eclipse-运行符-数据类型转换-环境变量配置

    1.能够使用Eclipse快捷键 ctrl + /   单行注释:再按一次则取消: ctrl + shift + /  多行注释:  ctrl + shift + \  取消多行注释: ctrl + ...

  9. 变量存储缓存机制 Number (int bool float complex)

    # ###变量存储的缓存机制(为了节省空间) #Number (int bool float complex) # (1) int -5~正无穷范围内 var1 = 18 var2 = 18 var1 ...

随机推荐

  1. git安装和第一次提交过程

    1,新建文件夹test,运行命令 git init 2,找到test的.git文件夹,打开之后找到config文件,在最后边加上一句话 [user] email=your email name=you ...

  2. C++ Primer Plus(一)

    完整阅读C++ Primer Plus 系统重新学习C++语言部分,记录重要但易被忽略的,关键但易被遗忘的. 预备 1.C++相对于C增加了最关键的两项,面向对象和范型编程. 处理数据 2.对于变量明 ...

  3. 从新冠疫情出发,漫谈 Gossip 协议

    众所周知周知,疫情仍然在全球各地肆虐.据最新数据统计,截至北京时间 2020-05-28,全球累计确诊 5698703 例,累计死亡 352282 例,累计治愈 2415237 例. 从上面的统计数据 ...

  4. ca72a_c++_标准IO库:面向对象的标准库

    /*ca72a_c++_标准IO库:面向对象的标准库继承:基类->派生类3个头文件9个标准库类型IO对象不可复制或赋值 ofstream, f--file,文件输出流ostringstream, ...

  5. 1、python简介-变量-注释-数据类型-用户交互-if语句-while循坏

    一. 计算机是什么 基本组成: 主板+cpu+内存 cpu: 主频, 核数(16) 内存:大小(8G, 16G, 32G) 型号: DDR3, DDR4, DDR5, 主频(海盗船,玩家国度) 显卡: ...

  6. JavaWeb的登陆与注销功能

    JavaWeb 登录与注销 大致流程 一般我们在Web应用中 登录页面一般是以 login.jsp的首页 大致流程如下: 当我们在前台写入用户名和密码之后,点击登录按钮 会将表单提交给一个LoginS ...

  7. Perl入门(一)Perl的基本类型及运算符

    在学习Perl的基础之前,还是希望大家有空去看以下Perl的简介.百度百科 一.Perl的基本类型 Per的基本类型分为两种:数值型和字符串型. 数值型可细分为 整数型.如123. 浮点型.如123. ...

  8. python解析json文件信息到csv中

    json格式多种多样,本代码着重看函数部分 import json, csv, os import pandas as pd josns_root = 'jsons' csvs_root = 'csv ...

  9. Flask项目实战:创建电影网站-创世纪(1)

    以后要养成写博客的习惯,用来做笔记.本人看的东西很多很杂,但因为工作中很少涉及,造成看了之后就忘,或者看了就看了,但是没有融入的自己的知识体系里面. 写博客一方面是做记录,一方面是给这段时间业余学习的 ...

  10. 【树形dp】 Bzoj 4472 Salesman

    题目 某售货员小T要到若干城镇去推销商品,由于该地区是交通不便的山区,任意两个城镇 之间都只有唯一的可能经过其它城镇的路线. 小T 可以准确地估计出在每个城镇停留的净收 益.这些净收益可能是负数,即推 ...