day2. 六大基本数据类型简介
一、基本数据类型
Number 数字类型 (int float bool complex)
str 字符串类型
list 列表类型
tuple 元组类型
set 集合类型
dict 字典类型
二、Number类型
1、int整形
Number类型2、float浮点型

# (1) float 浮点型 小数
# 表达方式1
floatvar = 4.88
print(floatvar)
print( type(floatvar) ) # 表达方式2 科学计数法
floatvar = 6.7e4
print(floatvar)
print( type(floatvar) )
浮点型
3、bool布尔型

# (2) bool 布尔型 True 真的 False 假的 只有两个值
boolvar = True
boolvar = False
print( boolvar )
print( type(boolvar) )
布尔型
4、complex复数

"""
complex 实数 + 虚数
3+4j
3: 实数
4j: 虚数
j: 如果有一个数,他的平方等于-1,那么这个数就是j,表达的是高精度的类型;(科学家认为有)
"""
# 表达方式一
complexvar = 56-3j
complexvar = -3j
print( complexvar )
print( type(complexvar) ) # 表达方式二
# 语法 : complex(实数,虚数)
complexvar = complex(56,-3)
print( complexvar )
print( type(complexvar) )
复数
三、字符串类型
1、定义
用引号引起来的就是字符串
2、转义字符 \
转义字符: \ + 某个字符
(1) 将有意义的字符变得无意义
(2) 将无意义的字符变得有意义 \n,\r\n: 换行
\t: tab缩进
\r: 将后面的字符直接拉到当前行行首
3、单双三引号引起来的字符串

# (1) 单引号引起来的字符串
strvar = 'kxq'
print(strvar)
print(type(strvar)) # (2) 双引号引起来的字符串
# 将无意义的字符变得有意义
strvar = "将无意义的\n字符变得有意义"
strvar = "将无意义的\r\n字符变得有意义"
strvar = "将无意义的\t字符变得有意义"
strvar = "将无意义的\n字符\r变得有意义" # 将有意义的字符变得无意义
strvar = "将无意义的\"字符\"变得有意义"
print(strvar)
print(type(strvar)) # (3) 三引号引起来的字符串 ''' """ (支持跨行)
strvar = """
fdsfad
dagdfs
"""
print(strvar)
print(type(strvar))
引起来的字符串
4、元字符
# 元字符 r"字符串" 不转义字符,原型化输出字符串
strvar = r"E:\python31期\day2"
print(strvar)
print(type(strvar))
5、格式化字符串

"""
语法: "字符串%s%s%s" %(值1,值2,值3)
%d 整型占位符
%f 浮点型占位符
%s 字符串占位符
""" # %d 整型占位符
strvar = "%d" % (5)
print(strvar) # %2d 占两位 原字符串默认居右 只有小于两位采用空格补
strvar = "%2d" % (5)
print(strvar) # %-2d 占两位 原字符串默认居左
strvar = "%-2d发发发" % (5)
print(strvar) # %f 浮点型占位符
strvar = "%f" % (1.1)
print(strvar) # %.2f 小数点保留2位
strvar = "%2f" % (1.1)
print(strvar) # %f 存在四舍五入的情况
strvar = "%2f" % (1.5863423)
print(strvar) # %s 字符串占位符
strvar = "%s" % ("fdassssdfas")
print(strvar) # 无论%d %f 都可以用 %s 占位符进行取代
格式化
容器类型数据 (str list tuple dict)
四、list列表
1、列表的特点
特点: 可获取,可修改,有序
2、定义列表
# 定义一个空列表
listvar = []
print(listvar, type(listvar))
3、获取列表值

# 正向下标索引 从0 开始 listvar = [100, 19.123, True, 3+4j, "kxq"] # 逆向下标索引 -5 -4 -4 -2 -1
print(listvar, type(listvar)) # 1.获取列表当中的值
res = listvar[2]
res = listvar[-3]
print(res) # 获取列表当中最后一个元素
# python 特有
print(listvar[-1]) """
len 获取容器类型数据的长度(元素的总个数)
"""
res = len(listvar)
print(res) res = listvar[res - 1]
print(res) # 简写
print(listvar[len(listvar) - 1])
取值
4、修改列表中的元素

listvar[-3] = False
print(listvar)
修改
五、元组tuple
1、元组的特点
特点: 可获取,不可修改,有序
2、定义元组
# 定义一个空元组
tuplevar = ()
print(tuplevar, type(tuplevar))
3、获取元组值

# 正向下标索引 从0 开始
tuplevar = ("top","jack","jj","GG") # 1.获取元组当中的元素
res = tuplevar[1]
res = tuplevar[-1]
print(res) # tuplevar[0] = "aaa" 错 不能修改元组中的值 # 3.判定元组的类型
"""逗号才是区分是否是元组的标识符"""
tuplevar = (123,)
tuplevar = 123,
print(tuplevar, type(tuplevar))
取值
对于str字符串
特征: 可获取,不可修改,有序
获取某一字符
# 0 1 2 3 4 5 6 7 8
strvar = "发生财的方式,银行"
# -9 -6 -3 -1 # 1.可以通过下标获取字符串当中的元素
res = strvar[1]
res = strvar[-8]
print(res)
strvar[-2] = "很" #错, 不能修改字符串中的元素
六、set集合
1、作用及特点
作用:集合之间的交差并补
特点: 无序,自动去重
2、集合的定义
# 定义一个集合
setvar = {"top","jack","jj","GG"}
print(setvar, type(setvar)) # 定义一个空集合
# setvar = {} 错 类型是字典了
setvar = set()
print(setvar, type(setvar))
3、集合无序
获取集合中的元素可以么? 不可以!
res = setvar[3] 错误
修改集合中的元素可以么? 不可以!
setvar[0] = "" 错误
4、自动去重
# 自动去重
setvar = {"top","jack","jj","GG","GG","GG","GG"}
print(setvar)
七、字典
1、特点
特点: 键值对存储的数据,表面上有序,实际上无序
语法: { 键1:值1 , 键2:值2 ..... }
2、字典的定义
# 1.定义一个空字典
dictvar = {}
print(dictvar , type(dictvar)) # 2.定义一个字典
dictvar = {"name":"kxq","age":"","passwd":""}
print(dictvar , type(dictvar))
3、获取/修改字典值
# 获取字典中的值
res = dictvar["name"]
print(res) # 修改字典当中的值
dictvar["passwd"] = ""
print(dictvar)
4、字典的键 和 集合中的值 对数据类型有要求

字典的键 和 集合中的值 数据类型的要求必须是如下几种:
如下类型可以: 不可变数据(可哈希的数据类型)
Number(int , float , bool ,complex), str, tuple 不允许的类型: 可变数据(不可哈希的数据类型)
list, set, dict 但凡提到哈希算法(hash),都是典型的无序特征
目的: 为了更加均匀的把数据分配到内存里,底层用的算法类似于取模. python3.6版本之后,对字典做了优化,存储数据的时候用哈希算法
但是在拿出数据的时候,重新按照定义字典时的顺序进行重新排序
所以看起来有序,实际上无序
要求
day2. 六大基本数据类型简介的更多相关文章
- day2 python六大标准数据类型简介
1.number( int , float , bool , complex ) # int 整型 intvar = 2020 print(type(intvar),id(intvar)) # f ...
- c#中的数据类型简介(委托)
c#中的数据类型简介(委托) 什么是委托? 委托是一种类型,它封装了一类方法,这些方法具有相同的方法签名(signature).定义听起来有点拗口,首先可以确定委托是一种数据类型,那么什么是方法签名, ...
- c#中的数据类型简介(数组)
c#中的数据类型简介(数组) 数组定义 可以将数组看成相同数据类型的一组或多组数据,包括一维数组,多维数组和交错数组. 数值数组元素的默认值设置为零,而引用元素的默认值设置为 null. 交错数组是指 ...
- c#中的数据类型简介(枚举)
C#中的数据类型简介(枚举) 枚举的定义 根据MSDN上给出的定义,枚举是一个指定的常数集,其基础类型可以是除Char外的任何整型. 如果没有显式声明基础类型,则使用 Int32. Enum 是 .N ...
- Redis API与常用数据类型简介
Redis API与常用数据类型简介 一.Redis API For .Net 首先,不得不说Redis官方提供了众多的API开发包,但是目前Redis官方版本不支持.Net直接进行连接,需要使用一些 ...
- python认知及六大标准数据类型
--- typora-root-url: assets --- ### -python的认知 ``` 89年开发的语言,创始人范罗苏姆(Guido van Rossum),别称:龟叔(Guido). ...
- openresty开发系列12--lua介绍及常用数据类型简介
openresty开发系列12--lua介绍及常用数据类型简介 lua介绍 1993 年在巴西里约热内卢天主教大学(Pontifical Catholic University of Rio de ...
- Redis数据类型简介(十分钟快速学习Redis)
如何在ubuntu18.04上安装和保护redis 如何连接到Redis数据库 如何管理Redis数据库和Keys 如何在Redis中管理副本和客户端 如何在Redis中管理字符串 如何在Redis中 ...
- redis安装及数据类型简介(string、list、set、sorted_set、hash)
一:简介: redis国内最大的案例--->新浪微博 memcache:是key-value数据库 数据类型:只支持key value数据 过期策略:支持 持久化:不支持(可以通过三方程序) 主 ...
随机推荐
- 简单了解一下 Swagger
一.Swagger 1.什么是 Swagger ? Swagger 是一个规范和完整的框架,用于生成.描述.调用以及可视化的 Restful 风格的 Web 服务. 简单的理解:是一款 REST AP ...
- [设计模式]工厂方法模式(Factory Method)
模式目的 定义一个用于创建对象的接口,让其子类来决定实例化哪个类. 工厂方法模式将类的实例化延迟到了子类中进行. 模式结构 组成部分 产品(Product) - 定义了产品功能的接口 具体产品(Con ...
- BERT源码分析及使用方法
本文原作者:梁源 BERT (Bidirectional Encoder Representations from Transformers) 官方代码库 包含了BERT的实现代码与使用BERT进行文 ...
- java 数据结构(四):java常用类四 比较器以及其他类
比较器 1.Java比较器的使用背景: Java中的对象,正常情况下,只能进行比较:== 或 != .不能使用 > 或 < 的但是在开发场景中,我们需要对多个对象进行排序,言外之意,就需要 ...
- nginx极简教程
Nginx 极简教程 本项目是一个 Nginx 极简教程,目的在于帮助新手快速入门 Nginx. examples 目录中的示例模拟了工作中的一些常用实战场景,并且都可以通过脚本一键式启动,让您可以快 ...
- CentOS 无法加载 ntfs文件系统类型解决办法
问题: CentOS无法加载ntfs 文件系统类型的移动硬盘. 解决办法: 1.下载rpmforge,下载对应的版本.(对应的CentOS版本,并区分32位和64位). 例如: wget http:/ ...
- ClickHouse源码笔记2:聚合流程的实现
上篇笔记讲到了聚合函数的实现并且带大家看了聚合函数是如何注册到ClickHouse之中的并被调用使用的.这篇笔记,笔者会续上上篇的内容,将剖析一把ClickHouse聚合流程的整体实现. 第二篇文章, ...
- Puppeteer爬虫实战(一)
Puppeteer 爬虫技术实践 信息简介 Puppeteer是Chrome开发团队发布的一个通过Chrome DevTool Protocol来控制浏览器Chrome(下文若无显式称呼Chromiu ...
- elementUI form表单验证不通过的原因
<el-form :model="form" :rules="rules"> <el-form-item prop="input&q ...
- 印象笔记如何使用二次验证码/虚拟MFA/两步验证/谷歌验证器?
一般点账户名——设置——安全设置中开通虚拟MFA两步验证 具体步骤见链接 印象笔记如何使用二次验证码/虚拟MFA/两步验证/谷歌验证器? 二次验证码小程序于谷歌身份验证器APP的优势 1.无需下载a ...