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数据 过期策略:支持 持久化:不支持(可以通过三方程序) 主 ...
随机推荐
- When Lambo with Howdoo
原文链接:https://howdoo.io/when-lambo/ 为了庆祝即将推出的革命性新社交媒体平台Howdoo以及我们令人惊喜的合作伙伴关系和社区,我们正在发起一项竞赛,以最终回答“When ...
- day51 表格与表单
目录 一.表格标签 二.表单标签 1 form内最重要的就是input标签,它通过type变形 2 select标签 3 textarea标签 4 重点 三.通过flask实现表单提交 四.css 1 ...
- __FILE__和__DIR__的用法
dirname(__FILE__)由两部分组成, __FILE__ 魔术变量和 dirname() 函数.__FILE__是当前脚本的绝对路径,通过 dirname() 函数后,就可以获得脚本所在目录 ...
- 我终于弄懂了Python的装饰器(四)
此系列文档: 1. 我终于弄懂了Python的装饰器(一) 2. 我终于弄懂了Python的装饰器(二) 3. 我终于弄懂了Python的装饰器(三) 4. 我终于弄懂了Python的装饰器(四) 四 ...
- three.js 几何体(二)
上一篇简单的介绍了几何体的构造体参数,这一篇郭先生就更加详细的说一说(十分简单的几何体我就不说了). 1. ShapeGeometry形状几何体 形状几何体方便我们从一个或多个路径形状中创建一个单面多 ...
- 读《大话设计模式》——应用策略模式的"商场收银系统"(WinForm)
策略模式的结构 这个模式涉及到三个角色: 环境(Context)角色:持有一个 Strategy 类的引用.抽象策略(Strategy)角色:这是一个抽象角色,通常由一个接口或抽象类实现.此角色给出所 ...
- 大话深度学习:B站Up主麦叔教你零代码实现图像分类神经网络
之前,我在B站发布了“大话神经网络,10行代码不调包,听不懂你打我!”的视频后,因为简单易懂受到了很多小伙伴的喜欢! 但也有小伙伴直呼不够过瘾,因为大话神经网络只有4个神经元. 也有小伙伴问不写代码, ...
- nginx配置文件服务器——带说明
需求: 搭建一个文件服务器,提供指定软件下载,在访问文件服务器下载软件时,在访问的主页上要有对应的软件使用.安装等说明(本来是可以搞一个readme的,但这个在文件服务器上要下载还要打开,还不如直接显 ...
- vpp之clib.h分析
vpp代码中有一个clib.h,其中封装了很一些很经典的位运算: //计算以2为底的对数,log2(x) //也就是计算2的N次方为x.x为uint32类型 #if defined (count_le ...
- DDD之5限界上下文-定义领域边界的利器
上图是一张普通地图,最刺眼的就是边界? 非常好奇地图绘制工程师是如何描绘如此弯曲多变的边界的?强制行政区域还是人群历史原因自然的人以群分? 我们再换个视角,对工程师或者架构师来说,微服务的边界如何划分 ...