day2. 六大基本数据类型简介
一、基本数据类型
Number 数字类型 (int float bool complex)
str 字符串类型
list 列表类型
tuple 元组类型
set 集合类型
dict 字典类型
二、Number类型
1、int整形
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数据 过期策略:支持 持久化:不支持(可以通过三方程序) 主 ...
随机推荐
- 【MySQL】Merge Index导致死锁
水稻:最近有个朋友生产环境出现MySQL死锁问题,一听是死锁,那必须去看看啊,于是饶(si)有(qu)兴(huo)致(lai)的研究了好几天 菜瓜:MySQL死锁,赶紧分享一下 水稻:能否先让我装完X ...
- BFC原理解析
BFC的概念 块格式化上下文(Block Formatting Context,BFC) 是Web页面的可视化CSS渲染的一部分,是块盒子的布局过程发生的区域,也是浮动元素与其他元素交互的区域. 它是 ...
- gulp-less打包后calc属性计算不准确的问题
.step-item{ width: calc((100% - 50px) / 2); &:nth-child(2){ margin-right: 0; } } 这样直接写的话,编译时会直接给 ...
- HTTP协议——详细版
一 HTTP协议简介 作为学习前端开发的开始,我们必须搞明白以下几件事 1.什么是互联网 互联网=物理连接介质+互联网协议 2.互联网建立的目的? 数据传输打破地域限制,否则 ...
- 绘图和可视化知识图谱-《利用Python进行数据分析》
所有内容整理自<利用Python进行数据分析>,使用MindMaster Pro 7.3制作,emmx格式,源文件已经上传Github,需要的同学转左上角自行下载或者右击保存图片. 其他章 ...
- 题解 CF613D 【Kingdom and its Cities】
考虑树形\(DP\),设\(num_x\)记录的为当\(1\)为根时,以\(x\)为子树中重要城市的个数. 那么进行分类讨论: ① 当\(num_x≠0\)时,则需将其所有满足\(num_y≠0\)的 ...
- Blazor带我重玩前端(四)
布局 Blazor中的布局和MVC中的布局是类似的. 创建布局 新建一个Razor页面,所有新增的布局都要继承LayoutComponentBase,同时标识自定义内容的输出位置,即标识Body的位置 ...
- ThinkPHP5.0、5.1和6.0教程文档合集(免费下载)
我们都知道ThinkPHP是一个免费开源的,快速.简单的面向对象的轻量级PHP开发框架. ThinkPHP6主要更新了什么呢? 1. 支持PHP最新的强类型 2. PSR开发规范得了更广泛的应用 3. ...
- vue学习(五) 访问vue内部元素或者方法
//html <div id="app"> <input type="button" value="ok" v-bind: ...
- vue学习(三) v-bind指令
//html <div id="app"> <input type="button" value="ok" v-bind: ...