python小白——进阶之路——day3天-———容器类型数据+Number类型强制类型转换
-->Number 部分
int : 整型 浮点型 布尔类型 纯数字字符串
float: 整型 浮点型 布尔类型 纯数字字符串
complex: 整型 浮点型 布尔类型 纯数字字符串 (复数)
bool: ( 容器类型数据 / Number类型数据 都可以 )
var1 = 45
var2 = 6.78
var3 = "12345676"
var4 = "nihao223"
var5 = 88-2j
var6 = True
var7 = False
# int 强制类型转换整型 True 强转int是1 False 强转int 是0
res = int(var2)
res = int(var6)
res = int(var7)
res = int(var3)
# res = int(var4) error
# res = int(var5) error
print(res)
# float 强制转换成浮点型
res = float(var1)
res = float(var3)
res = float(var6)
res = float(var7)
print(res)
# complex 强制转换成复数
res = complex(var1)
res = complex(var2)
res = complex(var3)
res = complex(var6)
res = complex(var7)
print(res)
# bool 强制转换成布尔类型 *****
res = bool(var1)
res = bool(var4)
res = bool(var5)
res = bool({1,2,3})
res = bool(None)
print("<===>")
print(res)
# 通过bool强制转换为假的10个数据 *****
(0 , 0.0 , 0j ,False , [] ,() , "" ,set() ,{} , None)
None 是一个关键字 本身代表空的 什么也没有
-->容器类型部分
str: ( 容器类型数据 / Number类型数据 都可以 )
list: 字符串 列表 元组 集合 字典
tuple: 字符串 列表 元组 集合 字典
set: 字符串 列表 元组 集合 字典 (注意:相同的值,只会保留一份)
dict: 使用 二级列表 或 二级元组 (二级集合语法上不错,但是无序,不建议使用)
var1 = "张三真漂亮"
var2 = ["张三","李四"]
var3 = ("张三","李四","王五")
var4 = {"红色的帽子","蓝色的帽子","绿色的帽子"}
var5 = {"cjx":"昨天请假了","lyf":"世界上最美的不过是回眸一笑","chp":"每次看你,都都出了猥琐的小眼神"}
var6 = 5488
# str ( 容器类型数据 / Number类型数据 都可以 )
'''基于原来的数据类型两边套上引号'''
res = str(var2)
res = str(var3)
res = str(var4)
res = str(var5)
res = str(var6)
print(res,type(res))
print(repr(res)) #原型化输出字符串
# list 强转
如果是列表强转字符串 ,把字符串中的每一个字符都当成新的元素放入列表当中
如果是其他容器类型数据,仅仅在套一个[],作为列表标识 字典单独记 只要键 不要值
res = list(var1)
res = list(var3)
res = list(var4)
res = list(var5) # 强转字典时,只保留键,舍弃值
print(res)
# tuple
如果是元组强转字符串 ,把字符串中的每一个字符都当成新的元素放入元组当中
如果是其他容器类型数据,仅仅在套一个(),作为元组标识 字典单独记 只要键 不要值
res = tuple(var1)
res = tuple(var2)
res = tuple(var4)
res = tuple(var5)
print(res)
# set
如果是集合强转字符串 ,把字符串中的每一个字符都当成新的元素放入集合当中,但是注意集合无序 , 自动去重
如果是其他容器类型数据,仅仅在套一个{},作为集合标识 字典单独记 只要键 不要值 注意集合无序 , 自动去重
res = set(var1)
res = set(var2)
res = set(var3)
res = set(var5)
res = set()
print(res)
# 对列表进行去重
listvar = ["李四","王大","张三","李二","李四","马六"]
setvar = set(listvar)
listvar2 = list(setvar)
print(listvar2)
# ###二级容器: 自己本身是一个容器,里面的元素还是一个容器类型数据 (list tuple set dict)
# 二级列表:
listvar = [1,2,3,4,[5,6,7,8]]
res = listvar[-1][-1]
print(res)
# 二级元组:
tuplevar = (11,222,33,44,(1,2,3),55)
res = tuplevar[4][1]
print(res)
# 二级集合:
setvar = {1,2,3,4,(5,6,7,8)} # 集合里面放的数据需要可哈希(不可变的)的数据
print(setvar)
# 二级字典
dictvar = {"a":{"c":444},"b":{"d":5555}}
res = dictvar["b"]
# res2 = res["d"] #res = dictvar["b"]['d']
res = dictvar["b"]['d']
print(res)
# 四级容器
listvar = [1,2,3,4,[5,56,7,89,(99,101,103,1555,{"a":1,"b":2})]]
res = listvar[-1][-1][-1]['a']
print(res)
# 等长的二级容器 : 里面都是容器类型数据,每个容器里面元素个数都一样
listvar = [(1,2,3),(4,5,6)]
listvar2 = ([1,2],[4,5],[11,99])
# ### 强转字典 必须是等长的二级容器,并且里面元素的个数是2个
# (1) 外面是列表 , 里面是列表或元组或字符串 (不推荐字符串,有局限性)
# listvar = [("a",1),("b",2)]
# listvar = [["c",3],("d",4)]
# listvar = ["e1","f2"]
listvar = [('a1',1),['b2',2],"c3"]
res = dict(listvar)
print(res)
# (2) 外面是元组 , 里面是列表或元组或字符串 (不推荐字符串,有局限性)
tuplevar = (["ccc",111],('aaaa',2222))
res = dict(tuplevar)
print(res)
# (3) 外面是集合,里面是元组或字符串
setvar = {('a',11),('b',22),"c3"}
dictvar = dict(setvar)
print(dictvar)
# 不推荐使用集合,因为集合无序,达不到想要的效果
listvar = [{"a",1},{"b",2}]
tuplevar = ({"a",1},{"b",2})
dictvar = dict(listvar)
dictvar = dict(tuplevar)
print(dictvar)
str() list() tuple() set() dict() 都可以强转成对应的类型
print("<==1=-=>")
res = str()
print(repr(res))
res2 = list()
print(res2)
res3 = tuple()
res3 = set()
res3 = dict()
print(res3)
python小白——进阶之路——day3天-———容器类型数据+Number类型强制类型转换的更多相关文章
- python小白——进阶之路——day3天-———运算符
(1)算数运算符: + - * / // % ** (2)比较运算符: > < >= <= == != (3)赋值运算符: = += -= *= /= //= %= ** ...
- python小白——进阶之路——day2天-———容器类型数据(list,set ,tuple,dict,str)
#容器类型数据 : list tuple # ###列表的特性:可获取,可修改,有序 # 声明一个空列表 listvar = [] print(listvar,type(listvar)) # (1) ...
- python小白——进阶之路——day2天-———数据类型和Number类型和str字符串
### -python的六大标准数据类型(1)Number 数字类型(int float bool complex)(2)String 字符串类型(3)List 列表类型(4)Tuple 元组类型(5 ...
- python小白——进阶之路——day2天-———变量的缓存机制+自动类型转换
# ###同一文件,变量的缓存机制 ''' -->Number 部分 1.对于整型而言,-5~正无穷范围内的相同值 id一致 2.对于浮点数而言,非负数范围内的相同值 id一致 3.布尔值而言, ...
- python小白——进阶之路——day1天---认识python和变量、注释
###-python的认知 89年开发的语言,创始人范罗苏姆(Guido van Rossum),别称:龟叔(Guido) (1)版本: python2.x原码不规范,重复较多 python3x:原码 ...
- python小白——进阶之路——day4天-———流程控制while if循环
# ### 代码块: 以冒号作为开始,用缩进来划分作用域,这个整体叫做代码块 if 5 == 5: print(1) print(2) # 注意点: 要么全部使用4个空格,要么全部使用1个缩进 ,这样 ...
- Python小白学习之路(二十一)—【迭代器】
迭代器 1.迭代器协议 对象必须提供一个 next 方法,执行该方法要么返回迭代中的下一项,要么就引起一个Stoplteration异常,以终止迭代(只能往后走不能往前退) 2.可迭代对象 实现了迭代 ...
- Python小白学习之路(九)—【字符串格式化】【百分号方式】【format方式】
写在前面: 最近的事情好像有很多.李咏的离去,让我觉得很突然,仿佛印象中就是主持节目的他,看着他和哈文的爱情,很是感动.离去,没有什么抱怨,只是遗憾. 总会感慨,时光的流逝. 好像真的很快,转眼间,我 ...
- Python小白的数学建模课-A1.国赛赛题类型分析
分析赛题类型,才能有的放矢. 评论区留下邮箱地址,送你国奖论文分析 『Python小白的数学建模课 @ Youcans』 带你从数模小白成为国赛达人. 1. 数模竞赛国赛 A题类型分析 年份 题目 要 ...
随机推荐
- SRS-开源流媒体服务器
SRS 简介 SRS定位是运营级的互联网直播服务器集群,追求更好的概念完整性和最简单实现的代码.SRS提供了丰富的接入方案将RTMP流接入SRS, 包括推送RTMP到SRS.推送RTSP/UDP/FL ...
- 【WCF系列】(三)如何配置和承载服务
如何配置和承载服务 配置绑定 配置服务:任务 为什么要配置服务:在设计和实现服务协定后,即可配置服务. 在其中可以定义和自定义如何向客户端公开服务指定可以找到服务的地址.服务用于发送和接收消息的传输和 ...
- Thread类详解 多线程中篇(二)
Java.lang.Thread是Java应用程序员对Java多线程的第一站,Thread就是对Java线程本身的抽象 所以在Java中的线程编程概念中,一个Thread实例 == 一个线程 线程有哪 ...
- Spring Boot (七)MyBatis代码自动生成和辅助插件
一.简介 1.1 MyBatis Generator介绍 MyBatis Generator 是MyBatis 官方出品的一款,用来自动生成MyBatis的 mapper.dao.entity 的框架 ...
- JDK动态代理浅析
原文同步发表至个人博客[夜月归途] 原文链接:http://www.guitu18.com/se/java/2018-06-29/17.html 作者:夜月归途 出处:http://www.guitu ...
- Python并发编程之实战异步IO框架:asyncio 下篇(十一)
大家好,并发编程 进入第十一章. 前面两节,我们讲了协程中的单任务和多任务 这节我们将通过一个小实战,来对这些内容进行巩固. 在实战中,将会用到以下知识点: 多线程的基本使用 Queue消息队列的使用 ...
- Orchard学习资料,适合入门上手
名词解释: http://www.cnblogs.com/esshs/archive/2011/06/01/2067501.html Orchard如何工作: http://www.cnblogs ...
- BootStrap之 提示工具(Tooltip)插件
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- sqlserver数据库发送邮箱
Exec [msdb].dbo.sp_send_dbmail @profile_name='SQLMailConfig', @recipients = @email, //需要发送的邮箱 @su ...
- 2019前端面试题汇总(主要为Vue)
摘要: 经典面试题. 原文:2019前端面试题汇总(主要为Vue) 作者:前端小酱 Fundebug经授权转载,版权归原作者所有. 毕业之后就在一直合肥小公司工作,没有老司机.没有技术氛围,在技术的道 ...