一:Number 数字类型(int  float  bool  complex)

1.整型: (正整数 0 负整数)
#(1)二进制用0b表示
intvar = 0b1010
print(intvar)
print(type(intvar))  #获取intvar类型
print(id(intvar))  #获取到16进制

#type 可以获取到变量的类型
#id 可以获取该变量所指向的那个值的地址
a = 5

#八进制用0o表示
intvar = 0o127
print(intvar)
print(type(intvar))
print(id(intvar))

#十六进制是用0x来表示
intvar = 0xff
print(intvar)  #转成2进制的数
print(type(intvar))
print(id(intvar))

intvar = 0
print(intvar,type(intvar))

intar = 0
print(intvar,type(intvar))
2.float浮点型(小数类型)
#表示方法一
floatvar = 3.14
print(floatvar,type(floatvar),id(floatvar))

#表示方法二 (科学计数法)
floatvar = 5.88e-2
print(floatvar,type(floatvar),id(floatvar))
floatvar = 4.11e3
print(floatvar)

3.bool 布尔类型  (只有Ture或False两种状态)
boolvar = True
print(boolvar,type(boolvar),id(boolvar))
boolvar = False
print(boolvar,type(boolvar),id(boolvar))
4.complex 复数类型
'''
复数: 实数 + 虚数
j : 如果有一个数,它的平方等于-1,那么这个数就是j
科学家认为有,属于高精度的类型
'''
#表示方法一
complexvar = 4+3j
print(complexvar,type(complexvar),id(complexvar))
#表示方法二
#complex(实数,虚数)
complexvar = complex(8,-3)
print(complexvar,type(complexvar),id(complexvar))

二:String字符串类型

定义:用引号引起来的就是字符串

转义字符:
(1)将有意思的字符变得无意义
(2)将无意义的字符变得有意义
语法: \ + 某字符
\n   \r\n : 代表换行
\t        : 代表一个缩进 水平制表符
\r        :将后面的字符串拉到当前行首
\
'''

#(1)单引号引起来的字符串
strvar = '今天天气很好'
print(strvar,type(strvar),id(strvar))

#(2)双引号引起了字符串
starvar =  "小楼昨夜又东风"
print(starvar,type(starvar),id(starvar))
starvar1 = "小楼'咋啦'"  #外面是双引号,里面需要单引号,与注释的嵌套注意点相同
print(starvar1,type(starvar1),id(starvar1))

#换行用法
starvar2 = "故国不堪回首\n明月中"
print(starvar2,type(starvar2),id(starvar2))

#\用法
starvar3 = "故国不堪回\"首\"明月中"
print(starvar3)

#(3)三引号引起来的字符串
strvar = """
本来无一'物',
何处惹"尘"埃。
"""
print(strvar)

strvar1 = '''
哈哈哈哈
噢噢噢噢
 '''
print(strvar1)

#(4)元字符串 r "字符串" (让字符串里面的转义字符失效)
starvar5 = r"今天天气真好\n哈哈哈"
print(starvar5)

#(5)字符串的格式化
"""
%d :整型占位符
%f :浮点型占位符
%s :字符串占位符
语法: "字符串 占位符"  % (实际值)
语法: 字符串 % (值1,值2,值3....)
"""
# %d
starvar6 = "今天买了%d个盆" %(5)
print(starvar6)

# %2d 站两个位置 默认居右
strvar7 = "昨天买了%2d斤水果" % (5)
print(strvar7)
# %-2d 站两个位置,默认居左
strvar8 = "今天买了%-2d个桶" %(6)
print(strvar8)

# float 小数点后默认保留6位
strvar9 = "今天付钱多少 %f " %(9.99)
print(strvar9)
#设置保留2位
strvar10 = "今天付钱多少 %.2f " %(9.99)
print(strvar10)
#设置保留一位,精确位数的时候,有四舍五入的规定
strvar11 = "今天付钱多少 %.1f " %(9.99)
print(strvar11)
# %s
aa = "ten"
strvar12 = "%s" %(aa)
print(strvar12)

#综合案例
strvar13 = "谁开工资了,一共%d元,一辆车%d元,心情%s" %(12900,21313,"很好")
print(strvar13)

''' 特征: 可以获取 不可修改 有序'''

#获取字符串当中的元素 可以使用下标

tuplevar = "咱们班只有一个美女"
res  = tuplevar[-2]
print(res)

#修改行不行? 不行
#tuplevar[-2] = "靓" error

三:List列表类型

  1. 定义一个空列表
    ''' 特征: 可获取 可修改 有序'''
    listvar = []
    print(listvar)
    print(type(listvar))

    #            0    1  2    3    4     5  正向下标
    listvar = ["明天",2,3.14,True,False,3-2j]
    #            -6   -5 -4   -3   -2    -1  逆向下标
    print(listvar)
    # (1)列表的获取 通过下标获取对应的值
    res = listvar[3]
    print(res)
    #能够通过逆向下标瞬间得到 列表里面的最后一个值
    #res <==>result
    res = listvar[-1]
    print(res)

    #获取列表最后一个值 通过做法
    #len 获取列表的长度(元素的个数)
    lengthvar = len(listvar)
    print(lengthvar)
    res2 = lengthvar - 1
    print(res2)
    print(listvar[res2])
    #简写
    print(listvar[len(listvar)-1])

    #(2)列表的修改
    listvar[3] = "201904251725"
    print(listvar)
    四:Tuple 元组类型

''' 特征:可获取 不可修改 有序'''
1.定义一个空元祖
tuplevar = ()
print(tuplevar,type(tuplevar))

# 见证是不是元组,取决于逗号,但是声明空元组时可以使用()
tuplevar = ("one",)
print(tuplevar,type(tuplevar))

2. 获取元组中的数据
tuplevar = ("刘德华","周星驰","李宇春","汪洋")
print(tuplevar)
print(tuplevar[2])
print(tuplevar[-1])

# 是否可以修改元组中的值? 不允许
#tuplevar[0] = 1 error

五:Set集合类型

# 集合 作用:交集 差集 并集 补集 (功能是用来做交叉并补的)
''''
特征; 自动去重 无限
'''

1.定义一个空集合
setvar = set() #set 强制转换成一个空集合的数据类型
print(setvar,type(setvar))

setvar = {"刘德华","蔡卓妍","李宇春","汪洋"}
print(setvar)

2.集合不能够修改或者获取其中的数据
#是否可以获取集合当中的值?不行
#setvar[1] error

#是否可以修改集合当中的值? 不行
#setvar = 123 error

3.集合能够自动去重
setvar = {"刘德华","蔡卓妍","李宇春","汪洋","李宇春"}
print(setvar)

六:Dict 字典类型

''' 特征:键值对存储的数据 无序'''
#字典 3.6版本 看起来有序,本质上无序 ,因为底层使用了哈希算法,它存储的数据是散列。
1.定义一个空字典

dictvar = {}
print(dictvar,type(dictvar))

# 它是有键值对存储的数据,冒号左边的是键,右边的是值,键值对之间用逗号隔开
dictvar = {"top":"关羽","middle":"小乔","bottom":"后裔","jungle":"盲僧","support":"机器人"}
print(dictvar)

2.获取字典当中的值
res = dictvar["bottom"]
print(res)

3.修改字典当中的值
dictvar['middle'] = "王昭君"
print(dictvar)

"""
可哈希数据:
可哈希数据 (不可变的数据): Number (int float bool comple ) str tuple
不可哈希的数据 (可变的数据): list set dict
"""

dictvar = {1:111,3.14:222,False:232,3+4j:131321,"dada":666}
print(dictvar)  #字典里包含其他各种数据类型
#一般在命名字典的键时,推荐使用字符串,按照变量命名的字符串

字典,集合与哈希算法需要注意

```

哈希算法

定义:

把不可变的任意长度值计算成固定长度的唯一值,这个值可正可负,可大可小,但长度固定

该算法叫哈希算法,这个固定长度值叫哈希值

 

特点:

哈希过的数据存储时,是一个随机存放的散列,并不是按照次序依次存放的,

所以通过哈希算法存储数据的速度较快.

 

查找:

字典的键就是按照哈希算法算出来的,可以通过该键找散列中的对应值,形成映射关系

集合中的值也是通过哈希算法计算后存储的

所以集合,字典本质上无序

 

版本:

3.6版本之前都是无序的

3.6版本之后,把字典的字面顺序记录下来,当从内存拿数据的时候,

根据字面顺序重新排序,所以看起来像有序,但本质上无序

 

可哈希数据:

可哈希的数据  (不可变的数据):Number(int float bool complex) str tuple

不可哈希的数据 (可变的数据): list set dict

```

python 基础之python的六大标准数据类型的更多相关文章

  1. python认知及六大标准数据类型

    --- typora-root-url: assets --- ### -python的认知 ``` 89年开发的语言,创始人范罗苏姆(Guido van Rossum),别称:龟叔(Guido). ...

  2. python基础系列教程——Python3.x标准模块库目录

    python基础系列教程——Python3.x标准模块库目录 文本 string:通用字符串操作 re:正则表达式操作 difflib:差异计算工具 textwrap:文本填充 unicodedata ...

  3. 二十一. Python基础(21)--Python基础(21)

    二十一. Python基础(21)--Python基础(21) 1 ● 类的命名空间 #对于类的静态属性:     #类.属性: 调用的就是类中的属性     #对象.属性: 先从自己的内存空间里找名 ...

  4. Python基础笔记系列十一:标准输入输出、文件读写和指针等操作

    本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!! 标准输入输出一.输入 在sublime中这个时候需要安装SublimeRE ...

  5. python基础2 ---python数据类型一

    python的数据类型 一.什么是数据类型以及数据类型的分类 1.数据类型的定义:python使用对象模型来存储数据,每一个数据类型都有一个内置的类,每新建一个数据,实际就是在初始化生成一个对象,即所 ...

  6. python基础1--安装、package、数据类型

    1.下载python 下载地址https://www.python.org/downloads/ 2.Package以及数据类型 自带package和外部package 自带package举例: os ...

  7. Python基础+Pythonweb+Python扩展+Python选修四大专题 超强麦子学院Python35G视频教程

    [保持在百度网盘中的, 可以在观看,嘿嘿 内容有点多,要想下载, 回复后就可以查看下载地址,资源收集不易,请好好珍惜] 下载地址:http://www.fu83.cc/ 感觉文章好,可以小手一抖 -- ...

  8. Python基础 初识Python

    机器码 机器码(machine code),学名机器语言指令,有时也被称为原生码(Native Code),是电脑的CPU可直接解读的数据. 通常意义上来理解的话,机器码就是计算机可以直接执行,并且执 ...

  9. python基础实践 -python是一门动态解释性的强类型定义语言

    python是一门动态解释性的强类型定义语言 Python能做什么? Python是一门综合性的语言,你几乎能在计算机上通过Python做任何事情,以下是Python应该最广泛的几个方面: 1.网络应 ...

  10. python基础-初识Python和不同语言之间的区别

    一.Python的创始人谁? Python之父:吉多·范罗苏姆GuidovanRossum 吉多·范罗苏姆是一名荷兰计算机程序员,他作为Python程序设计语言的作者而为人们熟知.在Python社区, ...

随机推荐

  1. unigui的页面布局使用

    (unigui的页面布局还是很强大的,基本什么的排版都能搞好.前面部分为原文章翻译,翻译不一定很准确,就能看吧,后面有使用说明,有什么不明白的欢迎加我QQ(910300653)一起交流学习) 一.布局 ...

  2. mysql建表时

    问题:Incorrect column specifier for column 'id' 答案:原来自动增长列用int数据类型,不用varchar

  3. ASP.NET MVC4应用程序配置跨域访问

    开发框架是使用webapi做后台,HTML5做前台,通过ajax调用webapi后台,返回json结果. 用的编译器是visual Studio2013,下面是配置方法 1.web.config文件 ...

  4. 运行 vue 报node错

    当报错 为这样时:  执行--npm install node-sass   即可

  5. win10安装pytorch

    安装gpu版本的pytorch需要三个东西:pytorch(torchvision).cuda.cudnn 相信大家都安装过了anaconda,就不介绍anaconda的安装了 1.安装cuda:从官 ...

  6. 2018-2019-2 《网络对抗技术》Exp6 信息搜集与漏洞扫描 20165326

    信息搜集与漏洞扫描 实践目标 掌握信息搜集的最基础技能与常用工具的使用方法. 基础知识 间接:不接触目标,无直接连接访问,使用辅助模块进行收集分析 DNS:执行各种相关查询 搜索引擎 直接:建立逻辑连 ...

  7. [mock open]PyUnit执行单元测试时使用字符串模拟文件对象

    def mock_open(data): from StringIO import StringIO stmp = StringIO(data) return stmp _open = __built ...

  8. Windows下杀掉全部的子线程

    最近遇到一个问题,就是在Windows下怎么杀掉全部的子线程,现把解决方法记录下. 问题来源: 用python执行了一个bat脚本,脚本的内容是执行一系列的adb命令,然后运行一个server.其中需 ...

  9. 微信小程序windowHeight的值在ios和android平台不一致问题解决办法

    开发中遇到一个业务需求,需要把页面顶部.底部固定,中间的scroll-view内部滚动.要满足这个需求,需要根据屏幕高度计算中间的scroll-view高度.结果悲催地发现,使用 wx.getSyst ...

  10. vs2017 创建虚拟目录失败 http//locXXXXXX,vs2015 无法访问IIS源数据

    两个版本ide打开的错误提示不一样,但是一个解决都解决了 这个问题折磨了我接近五个小时 终于找到了解决方案,在百度上面搜的都没什么鸟用,最终还是在stackoverflow找到了解决方案,附上连接,虽 ...