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题类型分析 年份 题目 要 ...
随机推荐
- 基于 Zookeeper 的分布式锁实现
1. 背景 最近在学习 Zookeeper,在刚开始接触 Zookeeper 的时候,完全不知道 Zookeeper 有什么用.且很多资料都是将 Zookeeper 描述成一个“类 Unix/Linu ...
- leetcode — binary-tree-inorder-traversal
import java.util.Arrays; import java.util.Stack; import java.util.TreeMap; /** * * Source : https:// ...
- Java开发知识之Java中的Map结构
Java开发知识之Java中的Map结构 一丶Map接口 Map没有实现Collection接口,提供的是Key 到Value的映射. Map中.不能包含相同的Key,每个Key只能映射一个Value ...
- 基本 SQL 之增删改查(二)
上一篇文章中,我们介绍了 SQL 中最基本的 DML 语法,包括 insert 的插入数据.update 的更新数据.delete 的删除数据以及基本的查询语法,但大多比较简单不能解决我们日常项目中复 ...
- 【Node.js】利用node.js搭建服务器并访问静态网页
node.js是一门服务端的语言,下面讲讲如何利用node.js提供给我们的api来搭建服务器,并且访问静态网页 项目结构如下 ------------------------------------ ...
- 痞子衡嵌入式:飞思卡尔Kinetis系列MCU启动那些事(3)- KBOOT配置(FOPT/BOOT Pin/BCA)
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是飞思卡尔Kinetis系列MCU的KBOOT配置. KBOOT是支持配置功能的,配置功能可分为两方面:一.芯片系统的启动配置:二.KBO ...
- 【测试工程师面试】 记录XX银行面试
LZ在一个18线小城市做测试,近来想走出自己的舒适区,去做一点不一样的测试工作. 18线地区,测试工作并不多.最好的差不多就是LZ目前待着的公司了.遂决定去魔都闯荡几年,对一个在魔都无房无车无户口的人 ...
- DSAPI多功能组件编程应用-网络相关(上)
[DSAPI.DLL下载地址] DSAPI多功能组件编程应用-网络相关,网络相关编程有很多很多,这里讲解一下封装在DSAPI中的网络相关的功能,这些都是本人简化到极点的功能了,可以在软件开发过程中节 ...
- c# ?? 和?
static void Main(string[] args) { double? num1 = null; // ? 说明num1可以为空 ...
- InnoSetup 使用
目录 简介 示例脚本 相关参考 在进行 WPF 程序打包发布的时候如果对程序打包没有特别高的要求,InnoSetup 足以胜任普通的程序打包发布需求,它支持安装包加密,安装包升级安装,注册表操作等常规 ...