Python 数据结构

  本章介绍 Python 主要的 built-type(内建数据类型),包括如下:

  • Numeric types          int float
  • Text Sequence Type     str
  • Boolean                bool
  • Sequence  Types        list tuple range
  • Set Types              set
  • Mapping Types          dict

  

  type() 函数

    type(object) 函数,返回括号中对象的 数据类型。

  数字类型

    python 提供了常用的数字类型:整数int,浮点数float,复数complex(暂不学习,需要时参考文档)

 number = 1                  # int
# print(number)
print(type(number))
number = 1.0 # float 注意加了小数点 .0 就是浮点型了
# print(number)
print(type(number))

    数字可通过运算符进行简单的运算,也可通过导入math 等模块进行数学计算;详细章节参考:Python学习(三)数据结构 —— int float

  字符串类型

    字符串是 Python 中最常用的数据类型。我们可以使用引号来创建字符串。创建字符串很简单,只要为变量分配一个值即可。

 string = "hello world"
print(string)
print(type(string)) # type() 返回类型函数

    Python 提供了很多字符串的操作方法以及内建的函数;详细章节参考:Python学习(四)数据结构 —— str

  布尔类型

    布尔类型使用两个常量表示 True 和 False,注意首字母大写,可进行 and or not 的运算;详细章节参考:Python学习(四)数据结构 —— bool

 T = True                  # 布尔类型:True False;注意大小写
F = False
# t = true # 小写报错
print(type(T))
print(type(F))

  序列类型

    list   tuple  及 range;list 类似 c 中的数组,有序;tuple 是不可变的 list;range 是 python 特有的,可方便产生等差的序列

    list是最常用的Python数据类型,需要熟练掌握其创建、访问、更新、删除等操作;range的使用方法也需熟练掌握,常用于 for 循环计数;

    详细章节参考:Python学习(四)数据结构 —— list tuple range

 list1 = [1,2,True,"c"]         # 列表类型;列表中的元素可为不同的类型;允许添加、修改、删除等操作
list2 = [] # 空列表
print(type(list1))
# print(type(list2)) tuple1 = (1,2,True,"c") # 元组类型:和列表类似,不同在于list可变,tuple不可变,无法添加、修改、删除等接口;其内存处理较优越
tuple2 = (1) # 注意仅一个元素时候,要在后面加个 “,”,不然数据类型就不是元组了
tuple3 = (1,)
tuple4 = () # 空元组的赋值
print(type(tuple1))
# print(type(tuple2))
# print(type(tuple3))
# print(type(tuple4)) print(type(range(0)))
# print(list(range(5))) # range(stop) 产生0至stop(不包含stop)的等差为1的序列,可转换为list类型,便于查看理解
# print(list(range(1,4))) # range(start, stop[, step]) 产生start至stop(不包含stop)的等差为step的序列,step缺省为1
# print(list(range(8,1,-2))) # step可为负值

  集合类型

    包括 set 和 frozenset(不可变的set);集合就是一组无序的元素组合,通常用作关系测试及去重;支持 交、并、差集运算

    详细章节参考:Python学习(四)数据结构 —— set frozenset

 set1 = {1,2,3,"",1,2}           # 集合类型:无序不重复元素的集。基本功能包括关系测试和消除重复元素。
set2 = {} # 注意:这不是空集合的表示法,这表示空字典,下节会介绍
set3 = set() # 空集合的赋值
print(type(set1))
# print(type(set2))
# print(type(set3))

  词典类型

    词典类型即 dict,由键和对应值成对组成;可对dict 的键值进行访问、修改;对dict 增加、删除键值等操作

    详细章节参考:Python学习(四)数据结构 —— dict

 dict1 = {'Name': 'Zara', 'Age': 7};       # 字典类型:以关键字为索引,来存储和析取值
dict2 = {} # 空字典的赋值
print(type(dict1))
# print(type(dict2))

  数据类型转换

    Python 可对变量的数据类型进行强制转换,只需将数据类型作为函数名即可。不是所有的数据类型都能进行相互间的转换,仅列出常用的几个。

 x = float(1)                     # int 转换成 float
print(x,type(x))
x = int(1.9) # float 转换成 int,相当于取整
print(x,type(x)) x = str(x) # int 或 float 可转换成字符串
print(x,type(x))
# x = int("a") # 该字符串无法转换成int,执行该条会报错
a = int("") # 但是,可表示成 int 或 float 的字符串可转换
b = float("1.0")
print(a,type(a),b,type(b)) print(int(True),int(False)) # 布尔型可转换成int类型 True 1; False 0 l = [1,2,3,2,3]
t = tuple(l)
s = set(l)
print(t,type(t),s,type(s)) # 通常 list tuple set 可进行相互间的转换,注意set是去重的

  type() 的其他返回

    对于内建函数,type() 会返回为 built-in function ... ;

    对于用户自定义函数,type() 会返回为 function ;

    对于对象,type() 会返回为 type ;

# print(print)                    # Python2报错;Python3 返回 built-in function print

def my_fun():                     # 定义函数 my_fun
pass # pass 为空语句
print(type(my_fun)) # 返回 function print(type(str)) # 内建数据类型名称 即 built-in type 返回type class table(object): # 定义对象 type()
pass
print(type(table)) # 用户自定义对象也返回为 type

    

Python学习(四)数据结构(概要)的更多相关文章

  1. python学习4—数据结构之列表、元组与字典

    python学习4—数据结构之列表.元组与字典 列表(list)深灰魔法 1. 连续索引 li = [1,1,[1,["asdsa",4]]] li[2][1][1][0] 2. ...

  2. python学习四(处理数据)

    head first python中的一个数据处理的例子 有四个U10选手的600米成绩,请取出每个选手跑的最快的3个时间.以下是四位选手的9次成绩 James 2-34,3:21,2.34,2.45 ...

  3. 从0开始的Python学习012数据结构&对象与类

    简介 数据结构是处理数据的结构,或者说,他们是用来存储一组相关数据的. 在Python中三种内建的数据结构--列表.元组和字典.学会了使用它们会使编程变得的简单. 列表 list是处理一组有序的数据结 ...

  4. Python学习笔记——数据结构和算法(一)

    1.解压序列赋值给多个变量 任何的序列(或者是可迭代对象)可以通过一个简单的赋值语句解压并赋值给多个变量. 唯一的前提就是变量的数量必须跟序列元素的数量是一样的. >>> data ...

  5. python学习之数据结构

    python的数据很丰富,所以对于数据分析来讲, python是一种最合适的选择 下面讲述一下常见的数据结构,包括栈,队列,元组,字典,集合等,以及对这些数据结构进行操作 #堆栈,后进先出 a=[10 ...

  6. python学习笔记--基础概要

    1.python的int类型没有大小限制(或者说只受机器内存限制),str类型用单引号或者双引号都行,只要对称就可以了.(注意固定性) 2.使用[]表示存取字符串等序列的某一项(索引从0开始) 3.类 ...

  7. Python学习基础知识概要

    1.输入输出 输出实例   1 2 print 'hello','world' hello world 输入实例   1 2 3 4 5 name = raw_input(); print " ...

  8. Python学习(四) Python数据类型:序列(重要)

    插播一下,先了解一下Python的数据类型,Python现有的数据类型有好多,最重要的有列表.元组.字典 列表:我觉得可以对应java中的数组 list=['physics', 'chemistry' ...

  9. Python学习笔记:概要

    1.print不同的互动解释语句输出和输出 在以下示例,我们分配字符串值到可变myString.先用print 要显示一个变量的内容, 其次是变量名,以显示. >>> myStrin ...

  10. Python学习(四):模块入门

    1.模块介绍 模块:代码实现的某个功能的集合 模块分类: 自定义模块 内置标准模块 开源模块 模块的常用方法: 是否为主文件:__name__ == '__main__' 如果是直接执行的某程序,那么 ...

随机推荐

  1. 小程序canvasu真机上数据图片不能使用

    canvas遇到的坑 1.文字换行 2.真机不能使用网络数据图片(真坑) 点击显示效果我就不写了,你们可以自己加一下 全部代码贴出来 css #preview { width: 100%; heigh ...

  2. Java学习(if wihle switch for语句)

    一.if语句 定义:if语句是指如果满足某种条件,就进行某种处理. 语句: if (条件语句){ 执行语句; …… } 上述格式中,判断条件是一个布尔值,当判断条件为true时,{}中的执行语句才会执 ...

  3. day1作业一:编写登陆接口

    作业一:编写登陆接口 1.输入用户名和密码 2.认证成功后显示欢迎信息 3.输错三次后锁定 Readme: (1)提示用户输入用户名: (2)用户名验证,验证是否已经锁定: (3)是否锁定:已锁定告诉 ...

  4. bzoj 1816 二分

    思路:二分答案,然后我们贪心地先不填最小的一堆,看在最小的一堆消耗完之前能不能填满其他堆. #include<bits/stdc++.h> #define LL long long #de ...

  5. 遍历datatable的几种方法

    方法一: DataTable dt = dataSet.Tables[]; ; i < dt.Rows.Count ; i++) { string strName = dt.Rows[i][&q ...

  6. 【fastadmin】 _id 功能失效解决办法

    在add.html模版中修改对应的input标签的各种属性

  7. BNUOJ 52509 Borrow Classroom

    最近公共祖先. 如果$A$到$1$的时间小于$B$到$C$再到$1$的时间,那么一定可以拦截. 如果上述时间相等,需要在到达$1$之前,两者相遇才可以拦截. #include<bits/stdc ...

  8. 洛谷P2151 [SDOI2009] HH去散步 [矩阵加速]

    题目传送门 HH去散步 题目描述 HH有个一成不变的习惯,喜欢饭后百步走.所谓百步走,就是散步,就是在一定的时间 内,走过一定的距离. 但是同时HH又是个喜欢变化的人,所以他不会立刻沿着刚刚走来的路走 ...

  9. CodeVS1380 没有上司的舞会 [树形DP]

    题目传送门 没有上司的舞会 题目描述 Description Ural大学有N个职员,编号为1~N.他们有从属关系,也就是说他们的关系就像一棵以校长为根的树,父结点就是子结点的直接上司.每个职员有一个 ...

  10. 剖析ironic

    关键技术 在安装操作系统时需要存储介质来存储系统镜像.需要控制物理机开关机,在网络部署环境中还需要预启动环境. PXE (预启动环境) IPMI(电源管理) iSCSI(存储) 什么是PXE PXE( ...