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数据 过期策略:支持 持久化:不支持(可以通过三方程序) 主 ...
随机推荐
- 震惊!慎老师怒吃pks并大呼:一口就吃完了!
慎老师吃pks是怎么回事呢?慎老师相信大家都很熟悉,但是慎老师吃pks是怎么回事呢,下面就让小编带大家一起了解吧. 慎老师吃pks,其实就是慎老师把花花蛤吃了,大家可能会很惊讶慎老师怎么会吃花花蛤呢? ...
- day10 基本数据类型(下)
目录 一.集合 1.作用 2.定义 3.类型转换 4.内置方法 4.1交集:两者共有的 4.2合集:两者融合去重 4.3差集:某个集合单独有的 4.4对称差集:两个集合各自单独有的组成的集合 4.5父 ...
- CSS(五)- 背景与边框 - 边框圆角与阴影基础用法
扩展阅读 本文仅仅做border的基础使用,想要深入了解的话可以戳以下几个链接,觉得作者写的很好. CSS Backgrounds and Borders Module Level 3 CSS魔法堂: ...
- redis源码学习之工作流程初探
目录 背景 环境准备 下载redis源码 下载Visual Studio Visual Studio打开redis源码 启动过程分析 调用关系图 事件循环分析 工作模型 代码分析 动画演示 网络模块 ...
- DirectX11 With Windows SDK--33 曲面细分阶段(Tessellation)
前言 曲面细分是Direct3D 11带来的其中一项重要的新功能.它引入了两个可编程着色器阶段以及一个固定的镶嵌处理过程.简单来说,曲面细分技术可以将几何体细分为更小的三角形,并以某种方式把这些新生成 ...
- HotSpot VM运行时
HotSpot VM运行时系统为HotSpot JIT编译器和垃圾收集器提供服务和通用API,同时还为VM提供启动.线程管理.JNI(Java本地接口)等基本功能.HotSpot VM运行时环境担当许 ...
- java大数据最全课程学习笔记(2)--Hadoop完全分布式运行模式
目前CSDN,博客园,简书同步发表中,更多精彩欢迎访问我的gitee pages 目录 Hadoop完全分布式运行模式 步骤分析: 编写集群分发脚本xsync 集群配置 集群部署规划 配置集群 集群单 ...
- Ethical Hacking - NETWORK PENETRATION TESTING(19)
MITM-DNS Spoofing DNS Spoofing allows us to redirect any request to a certain domain to another doma ...
- 010.Nginx正反代理
一 Nginx代理 1.1 Nginx代理概述 nginx是一款自由的.开源的.高性能的HTTP服务器和反向代理服务器.同时也是一个IMAP.POP3.SMTP代理服务器.nginx可以作为一个HTT ...
- 少儿编程:python趣味编程第一课
本文仅针对8-16岁的青少年,所以流程是按如何去教好中小学生走的,并不适合成人找工作学习,因为进度也是按照青少年走的 大家好,我是C大叔,从事少儿编程行业三年有余(2016年从事少儿编程行业,少儿编程 ...