I. 数据类型

Python3将程序中的任何内容统称为对象(Object),基本的数据类型有数字和字符串等,也可以使用自定义的类(Classes)创建新的类型。

Python3中有六个标准的数据类型:

  • Number(数字)
  • String(字符串)
  • List(列表)
  • Tuple(元组)
  • Set(集合)
  • Dictionary(字典)

Python3的六个标准数据类型中:

  • 不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);
  • 可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。

1. Number:int, float, bool, complex

a, b, c, d = 1, 2.3, True, 4+5j
print(type(a), type(b), type(c), type(d), type(a+b+c+d), a+b+c+d)

<class 'int'> <class 'float'> <class 'bool'> <class 'complex'> <class 'complex'> (8.3+5j)

2. String:

Python中的字符串用单引号'或双引号"括起来,同时使用反斜杠\转义特殊字符。r或R表示原始字符串。

s = r'this is raw string \n \t.'
print(type(s), s)

<class 'str'> this is raw string \n \t.

3. List:

列表是写在方括号[]之间,用逗号分隔开的元素列表。列表的元素可以是数字、字符串和列表。

4. Tuple:

元组是写在小括号()之间,用逗号分隔开的元素列表。

t = (1, 2.3, True, 4+5j, (6, 'abc', ['d', {'id': 9, 'value': 'dict'}]))
print(type(t), t)

<class 'tuple'> (1, 2.3, True, (4+5j), (6, 'abc', ['d', {'id': 9, 'value': 'dict'}]))

5. Set:

集合可以使用{}或set()函数来创建,创建空集合必须用set()。

基本功能是测试成员关系和删除重复元素。

s1 = {1.2, 4+5j, 'abc', 'abc', 'd'}
s2 = set('abcdde')
print(type(s1), s1, type(s2), s2)
print(s1 - s2, s1 | s2, s1 & s2, s1 ^ s2)

<class 'set'> {1.2, (4+5j), 'd', 'abc'} <class 'set'> {'c', 'a', 'd', 'e', 'b'}
{1.2, (4+5j), 'abc'} {1.2, 'c', 'a', 'd', (4+5j), 'abc', 'e', 'b'} {'d'} {'c', 1.2, 'a', (4+5j), 'abc', 'e', 'b'}

6. Dictionary:

字典通过{}或dict()函数创建,是无序的key:value映射的集合。key必须为不可变类型且唯一。

d1 = {1: 'abc', 'name': {'cn': 'Chinese name', 'en': 'English name'}, (True, 4+5j): [1, 'abc']}
d2 = dict([(1, 'abc'), ('name', {'cn': 'Chinese name', 'en': 'English name'})])
d3 = dict(name={'cn': 'Chinese name', 'en': 'English name'}, one='abc')
print(type(d1), d1, d1[(True, 4+5j)])
print(type(d2), d2, d2[1])
print(type(d3), d3, d3['one'])

<class 'dict'> {1: 'abc', 'name': {'cn': 'Chinese name', 'en': 'English name'}, (True, (4+5j)): [1, 'abc']} [1, 'abc']
<class 'dict'> {1: 'abc', 'name': {'cn': 'Chinese name', 'en': 'English name'}} abc
<class 'dict'> {'name': {'cn': 'Chinese name', 'en': 'English name'}, 'one': 'abc'} abc

II.数据类型转换

参考:简明Python教程(英文原版)、菜鸟教程

数据类型转换字符串转字典

Python3数据类型及转换的更多相关文章

  1. 整理了最全的Python3数据类型转换方法,可以收藏当手册用

    本文基于python3.8版本,总结了各种数据类型直接的转换规则和方法.算是比较全了,可以收藏当手册来查. 概述 数据类型转换,指的是通过某种方法,将一个数据由原来的类型转换为另外一个类型.比如,我们 ...

  2. Python3 常见数据类型的转换

    Python3 常见数据类型的转换 一.数据类型的转换,你只需要将数据类型作为函数名即可 OCP培训说明连接:https://mp.weixin.qq.com/s/2cymJ4xiBPtTaHu16H ...

  3. python3数据类型

    python基本数据类型 Python3 中有六个标准的数据类型: Number(数字) String(字符串) List(列表) Tuple(元组) Sets(集合) Dictionary(字典) ...

  4. Python3数据类型之数字

    1. Python数字类型的作用 Python数字类型用来存储数值,它是不可变对象,一旦定义之后,其值不可以被修改.如果改变了数字类型的值,就要重新为其分配内存空间. 定义一个数字类型的变量:a = ...

  5. java中数据类型的转换

    数据类型的转换,分为自动转换和强制转换. 自动转换是程序执行过程中“悄然”进行的转换,不需要用户提前声明,一般是从位数低的类型向位数高的类型转换 强制转换必须在代码中声明,转换顺序不受限制 自动数据类 ...

  6. Java的基本数据类型与转换

    1.1 Java为什么需要保留基本数据类型 http://www.importnew.com/11915.html 基本数据类型对大多数业务相关或网络应用程序没有太大的用处,这些应用一般是采用客户端/ ...

  7. java的数据类型的转换

    一:java的数据类型转换除布尔类型boolean(不能转换)有两种:<一> 自动转换: <二> 强制转换 <一>.自动转换:就是将小的数据类型自动转换成大的数据类 ...

  8. JavaScript学习笔记——数据类型强制转换和隐式转换

    javascript数据类型强制转换 一.转换为数值类型 Number(参数) 把任何的类型转换为数值类型 A.如果是布尔值,false为0,true为1 B.如果是数字,转换成为本身.将无意义的后导 ...

  9. JAVA数据类型自动转换,与强制转换

    一.数据类型自动转换 public class Test{ public static void main(String[] args){ int a = 1; double b = 1.5; dou ...

随机推荐

  1. storcli 简易使用介绍

    MegaCli 是LSI公司官方提供的SCSI卡管理工具,由于LSI被收购变成了现在的Broadcom,所以现在想下载MegaCli,需要去Broadcom官网查找Legacy产品支持,搜索MegaR ...

  2. 字符串的顺序倒置。(Reverse)

    实际遇到的问题:在串口获取码表数据的时候,有的码表传到电脑上的数字顺序是颠倒的,即:123.45,会显示为54.321.需要重新处理数据.方法很多,也不难实现,现在列举其中5个. public str ...

  3. 前端面试题总结(js、html、小程序、React、ES6、Vue、算法、全栈热门视频资源)

    写在前面 参考答案及资源在看云平台发布,如果大家想领取资源以及查看答案,可直接前去购买.一次购买永久可看,文档长期更新!有什么意见与建议欢迎您及时联系作者或留言回复! 文档描述 本文是关注微信小程序的 ...

  4. MySQL 必知必会学习笔记(常用命令一)

    SHOW DATABASES;USE LangLibCEE;SHOW TABLES;SHOW COLUMNS FROM customers;DESC customers; SHOW STATUS WH ...

  5. ansible-play中role的基本用法

    #role应用 #roles跟调用角色的剧本文件应该与roles同级关系,即放在ansible目录下 #makir /root/ansible/roles/{nginx,http,ftp,mysql, ...

  6. 集成学习-Adaboost

    Adaboost 中文名叫自适应提升算法,是一种boosting算法. boosting算法的基本思想 对于一个复杂任务来说,单个专家的决策过于片面,需要集合多个专家的决策得到最终的决策,通俗讲就是三 ...

  7. Vue中通过v-for动态添加图片地址

    由于组件化问题,webpake在打包以后,src目录下的assets里面存放的img图片,路径已经更换.很多入坑的前端程序员在使用的时候,可能专破头也弄不清地址是什么个情况: 这里在使用vue-cli ...

  8. python pycharm pyqt 安装

    1.python3 windows:www.python.org/download/windows/ 我的是WIN7  64位所以选的是    Download Windows x86-64 exec ...

  9. 3D数学基础(一)Unity坐标系

    Unity引擎时非常成熟的,引擎内部运用了很多的数学知识,他对开发者来说是不可见的,而且他已经封装好的算法也不是很全面.此外,要是使用引擎封装好的算法也要明白其实现的原理. 写过一些代码,也参考了一些 ...

  10. 使用VMware Workstation 14 Player或者Oracle VM VirtualBox安装Fedora-Workstation-netinst-x86_64-27-1.6操作系统的相关记录

    无论是在使用哪个(VMware或者Oracle VM)都遇到了一个问题:即使在安装完Fedoras操作系统之后,进行Reboot还是会进入之前一摸一样的安装界面,相当于再次安装.然而最最有效的解决办法 ...