Python中的序列结构有哪些类型呢?

Python 不像其他程序设计语言,(如Java或者C语言)采用大括号“{}”分隔代码块,而是采用代码缩进和冒号“:”区分代码之间的层次。
缩进可以使用空格或者键实现。 其中,使用空格时,通常情况下采用4个空格作为一个所尽量,而使用Tab键时,则采用用一个Tab键作为一个缩进量。通常情况下建议采用空格进行缩进。
在python中,对于类定义、函数定义、流程控制语句、异常处理语句等,行尾的冒号和下一行的缩进表示一个代码块的开始,而缩进结束,则表示一个代码块的结束。
python对代码的缩进要求非常严格,同一个级别的代码块缩进量必须相同。如果不采用合理的代码缩进,将抛出SyntaxError异常。例如,代码中有的缩进量是4个空格,还有的是3个空格,就会出现SyntaxError错误。
同一级别的代码只需要保持对齐就可,对于不同级别的代码进行缩进,这样就能区分开代码执行的逻辑。
python的语法其实总结一下就两条:
第一,一条代码作为一行:比如一个赋值、一个运算、一个请求、一条打印等。
第二,对齐和缩进:同一级别的代码只需要保持对齐就可,对于不同级别的代码进行缩进,这样就能区分开代码执行的逻辑。
保留字是python语言中一些已经被赋予特定意义的单词。开发程序时,不可以把这些保留字作为变量、函数、类、模块和其他对象的名称来使用。
注:python中所有保留字是区分字母大小写的。例如,if是保留字,但IF就不属于保留字。
(1)变量的定义:在python中,不需要先声明变量名及其类型,直接赋值即可创建各种类型的变量。但是变量的命名并不是任意的,应遵循以下几条规则:
1)变量名只能是字母、数字或下划线的任意组合
2)变量名的第一个字符不能是数字
3)变量名不能使用上述保留字
4)变量名必须是一个有效的标识符
5)慎用小写字母i和大写字母O
6)选择有意义的单词作为变量名
注:print说明可以同时打印多个数据,打印的不同数据之间要用逗号区分开,逗号前后代表两个参数
注:在python语言中,使用内置函数type()可以返回变量类型。
在python语言中,使用内置函数id()可以返回变量所指的内存地址。
在32位机器上,整数的位数为32位,在64位系统上,整数的位数为64位。
整数:整数类型包括十进制、八进制、十六进制和二进制。
#每个位置上“1”代表的阿拉伯数字是2(n-1)次方,n表示位置所在位数。
跟c语言不同,python的长整数没有指定位宽,即:python没有限制长整数数值的大小,但实际上由于机器内存有限,我们使用的长整数数值不可能无限大。
注意,自从Python2.2 起,如果长数发生溢出,python会自动将整数数据转换为长整数,所以如今在长整数数据后面不加字母L也不会导致严重后果
浮点数用来处理实数,即带有小数的数字。类似于c语言中的double类型,占8个字节(64位),其中52位表示底,11为表示指数,剩下的一位表示符号。
注:浮点的表示形式是小数,但小数不止包括浮点。
复数由实数部分和叙数部分组成,一般形式为x+yj,其中的x是复数的实数部分,y是复数的虚数部分,这里的x和y都是实数。
该类型主要用来表示真值或假值。真值返回结果为:True或者1,假值返回结果为:False或者0
在python中,所有的对象都可以进行真值测试。其中,只有下面列出的几种情况得到的值为假:
2)数值中的零,包括0、0.0、虚数0
3)空序列,包括字符串、空元组、空列表、空字典
4)自定义对象的实例,该对象的_bool_方法返回False或者_len_方法返回0
字符串就是连续的字符序列,可以是计算机所能表示的一切字符集合。在python中,字符串属于不可变序列,通常使用单引号' ',双引号" "或者三引号""" """括起来。这位三种引号形式在语义上没有差别,只是在形式上有些差别。其中单引号和双引号的字符序列必须在一行上,而三引号内的字符序列可以分布在连续的多行上。注意,字符串开始和结尾使用的 形式必须保持一致。
字符串拼接:python中的字符串在C语言中体现为是一个字符数组,每次创建字符串的时候需要在内存开辟一块连续的空,并且一旦需要修改字符串的话,就需要再次开辟空间,万恶的+号每出现一次就会在内存中重新开辟一块空间。
6,常用类型转换函数及其作用
(3)比较(关系)运算符
注:if语句后面一定要加冒号,不然会出错。
语句1 #表达式为真(True),则执行语句1
语句2 #表达式为真(False),则执行语句1
注:在使用else语句时,else一定不可以单独使用,它必须和保留字if一起使用。
程序中使用if...else语句时,如果出现if语句多于else语句的情况,那么该else语句将会根据缩进确定该else语句属于哪个if语句,如下例:
注: 第二行代码中的float()函数用于将用户的输入强制转换成浮点型。
注:在使用while循环语句时,一定不要忘记添加将循环条件改变为False的代码。
start:用于指定计数的起始值,可以省略,如果省略,则从0开始。
end:用于指定计数的结束值(但不包括该值,如range(7),则得到的值为0~6,不包括7),不能省略。当range()函数中只有一个参数时,即表示指定计数的结束值。
step:用于指定步长,即两个数之间的间隔,可以省略,如果省略则表示步长为1。例如,range(1,7)将得到1、2、3、4、5、6
在python3.X中,使用print()函数时,若想让print语句输出的内容在一行上显示,需要加上“,end='分隔符'”,并且该分隔符为一个空格,如果在连接输出时不需要用分隔符隔开,也可以不加分隔符。如:
for循环后边一定要加冒号,否则会出错
在while循环中套用while循环的格式如下:
在for循环中套用for循环的格式如下:
在while循环中套用for循环的格式如下:
在for循环中套用while循环的格式如下:
break语句可以终止当前的循环,包括while和for在内的所有控制语句。
continue 语句的作用没有break强大,它只能终止本次循环而提前进入到下一次循环中
pass空语句一般起到占位作用
序列是一块用于存放多个值的连续内存空间,并且按一定顺序排列,每一个值(称为元素)都分配一个数字,称为索引或位置,通过该索引可以取出相应的值。
在python中,序列结构主要有列表、元组、集合、字典和字符串,对于这些序列结构有以下几个通用的操作。其中,集合和字典不支持索引、切片、相加和相乘操作。
切片操作是访问序列元素中的另一种方法,它可以访问一定范围内的元素。通过切片操作可以生成一个新的序列。实现切片操作的语法格式如下:
sname:表示序列的名称
start:表示切片的开始位置(包括该位置),如果不指定,则默认为0。
end:表示切片的截止位置(不包括该位置),如果不指定,则默认为序列的长度。
step:表示切片的步长,如果省略,则默认为1,当省略该步长时,最后一个冒号也可以省略。
注:如果想要复制整个序列,可以将start和end参数都省略,但是中间的冒号需要保留。例如:names[:]就表示复制整个名称为names的序列。
在python中,支持两种相同类型的序列相加操作,即将两个序列进行连接,不会去除重复的元素,使用(+)运算符实现。例如,将两个列表相加,可以使用以下代码:
注:在进行序列相加时,相同类型的序列是指同为列表、元组、集合等,序列中的元素类型可以不同。不能将列表和元组相加,也不能将列表和字符串相加
(5)检查某个元素是否是序列的成员
在python中,可以使用in关键字检查某个元素是否为序列的成员,即检查某个元素是否包含在某个序列中。语法格式如下:
(6)计算序列的长度、最大值和最小值
(7)python提供的内置函数及其作用
1.使用赋值运算符直接创建列表
list(data),其中,data表示可以转换为列表的数据,其类型可以是range对象、字符串、元组或者其他可迭代类型的数据。使用list()数据不仅能通过range对象创建列表,还可以通过其他对象创建列表。
5.访问列表元素(查)
在已知列表元素的状态下:
在未知列表元素的状态下:
6.添加列表元素(增)
7.插入列表元素(增)
8.修改列表元素(改)
9.删除列表元素(删)
11.统计列表中重复的元素(查)
13.排序(特殊符号>数字>大写字母顺序>小写字母顺序)
15.现假定一个列表有多个元素,想知道c在哪个位置?-----通过输入”c”这个元素,直接找到c的位置。
16.浅复制(浅 copy:只复制第一层,复制的是内存地址)
元组(tuple)与列表类似,也是由一系列按特定顺序排列的元素组成,但是它是不可变序列。因此,元组也可以称为不可变的列表。在形式上,元组的所有元素都放在一对“()”中,两个相邻元素间使用“,”分隔。在内容上,可以将整数、实数、字符串、列表、元组等任何类型的内容放入到元组中,并且在同一个元组中,元素的类型可以不同,因为它们之间没有任何关系。通常情况下,元组用于保存程序中不可修改的内容。
(1)使用赋值运算符直接创建元组
2.访问元组元素(查)
3.修改元组元素(改)
注:元组不能对单个元素进行修改,在进行元组连接时,连接的内容必须都是元组,不能将元组和字符串或者列表进行连接
(1)列表属于可变序列,它的元素可以随时修改或者删除;元组属于不可变序列,其中的元素不可以修改,除非整体替换。
(2)列表可以使用append()、extend()、insert()、remove()和pop()等方法实现添加和修改列表元素,而元组没有这几个方法,所以不能向元组中添加和修改元素。同样,元组也不能删除元素。
(3)列表可以使用切片访问和修改列表中的元素,元组也支持切片,但是它只支持通过切片访问元组中的元素,不支持修改。
(4)元组比列表的访问和处理速度要快,所以当只是需要对其中的元素进行访问,而不进行任何修改时,建议使用元组。
(5)列表不能作为字典的键,而元组可以
在python中,字典与列表类似,也是可变序列,不过与列表不同,它是无序的可变序列,保存的内容是以“键-值对”的形式存放的。使用就像字典,通过笔划、字母来查对应页的详细内容。
(1)通过键而不是通过索引来读取,字典有时也称为关联数组或者散列表(hash)。
(2)字典是任意对象的无序组合。
(3)字典是可变的,并且可以任意嵌套。
(4)字典中的键必须唯一。
(5)字典中的键必须不可变。
(1)通过映射函数创建字典
zip()函数:用于将多个列表或元组对应位置的元素组合为元组,并返回包含这些内容的zip对象。如果想获取元组,可以将zip对象使用的tuple()函数转换为元组;如果想获取列表,则可以使用list()函数将其转换为列表
(2)通过给定的“键-值对”创建字典
在python中,还可以使用dict对象的fromkeys()方法创建值为空的字典。
此外,还可以通过已存在的元组和列表创建字典。
在python中,访问字典的元素可以通过下标的方式实现,与列表和元组不同,这里的下标不是索引号,而是键。
python中推荐的方法是使用字典对象的get()方法获取指定键的值。
使用字典对象的items()可以获取字典的“键-值对”列表,语法格式如下:
其中,dictionary为字典对象;返回值为可遍历的(键-值对)的元组列表。想要获取到具体的“键-值对”,可以通过for循环遍历该元组列表
判断一个字典里有没有某个元素:
将字典转换成元组(info.item)
在python中,提供了两种创建集合的方法:一种是直接使用“{}”创建,另一种是通过set()函数将列表、元组等可迭代对象转换为集合。推荐使用第二种方法。
1.直接使用“{}”创建集合
注:在创建集合时,如果输入了重复的元素,python会自动只保留一个。
7.差集(在我这里有在你那里没有)
注:差集运算符号:-(减号)

对于每种编程语言一般都会规定一些容器来保存某些数据,就像java的集合和数组一样python也同样有这样的结构

而对于python他有四个这样的内置容器来存储数据,他们都是python语言的一部分可以直接使用而无需额外的导入

  列表一种跟java和c中的数据很像的一种数据结构,他都是保存一系列相似,且有序元素的集合,不过不同的是列表中的元素可以不是同一种数据类型,且列表的长度是可变的

  可以动态的增加可减少这一点则有点像java中的stringBuilder对象,列表中有一点值得注意的是在对列表进行复制是,不能简单的使用赋值语句,这样会使得两个变量同时指向一个列表,当一个改变时另一个变量的值也会改变,正确的复制方法是用copy()方法来进行复制

  关于一个存储结构增删查看则其必备的功能:

Python实现结构体代码实例

这篇文章主要介绍了Python实现结构体代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

一.冒泡排序介绍 冒泡排序(英语:Bubble Sort)是一种简单的排序算法.它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来.遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成.这个算法的名字由来是因为越小的元素会经由交换慢慢"浮"到数列的顶端. 二.冒泡排序原理 比较相邻的元素.如果第一个比第二个大,就交换他们两个. 对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对.这一步做完,最后的元素应该会是最大的数. 针对所有的

第二次世界大战促使了现代电子计算机的诞生,当初的想法很简单,就是用计算机来计算导弹的弹道,因此在计算机刚刚诞生的那个年代,计算机处理的信息主要是数值,而世界上的第一台电子计算机ENIAC每秒钟能够完成约5000次浮点运算.随着时间的推移,虽然对数值运算仍然是计算机日常工作中最为重要的事情之一,但是今天的计算机处理得更多的数据都是以文本信息的方式存在的,而Python表示文本信息的方式我们在很早以前就说过了,那就是字符串类型.所谓字符串,就是由零个或多个字符组成的有限序列,一般记为$$

本文实例讲述了Python基本数据结构之字典类型dict用法.分享给大家供大家参考,具体如下: 词典类型 dict 字典由键(key)和对应值(value)成对组成.字典也被称作关联数组或哈希表. dict 赋值 dict 整体放在花括号{}中,每个键与值用冒号隔开(:),每对用逗号分割: d = {'one':1, 'two':2, 'three':3} 键必须独一无二,但值则不必:值可取任何数据类型,如字符串,数或元组:若创建时同一个键被赋值两次,后一个值会被记住: 键必须不可变,所以可以用

Python数据结构与算法(几种排序) 数据结构与算法(Python) 冒泡排序 冒泡排序(英语:Bubble Sort)是一种简单的排序算法.它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来.遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成.这个算法的名字由来是因为越小的元素会经由交换慢慢"浮"到数列的顶端. 冒泡排序算法的运作如下: 比较相邻的元素.如果第一个比第二个大(升序),就交换他们两个. 对每一对相邻元素作同样的工作,从

Python作为一种脚本语言,其要求强制缩进,使其易读.美观,它的数据类型可以实现自动转换,而不需要像C.Java那样给变量定义数据类型,使其编写非常方便简单,所以广受大家的欢迎. 现如今,Python已经广泛的应用于数据分析.数据挖掘.机器学习等众多科学计算领域.所以既然涉及到科学计算,深入了解Python原生提供的数据结构是很有必要的,这样才能在数据的海洋中游刃有余.得心应手.本文便以此展开,做一个归纳整理,方便收藏. Python 一.序列结构 首先介绍的数据结构是序列结构,所谓序列,也就

本文实例讲述了Python基础学习之基本数据结构.分享给大家供大家参考,具体如下: 前言 相比于PHP,Python同样也是脚本解析语言,所以在使用Python的时候,变量和数据结构相对于编译语言来说都会简单许多,但是Python相比于PHP来说,变量类型的定义会比较严格:string->int的转换没有PHP那么方便.但这也让程序稳定性有所提升,例如和客户端交互的时候,数据库取出来的数字int和缓存取出来的数字(默认是string)需要手动进行转换(否则会有报错提示),而PHP不需要手动转换的

本文实例讲述了Java基础学习笔记之数组.分享给大家供大家参考,具体如下: 数组的定义于使用 1:数组的基本概念 一组相关变量的集合:在Java里面将数组定义为引用数据类型,所以数组的使用一定要牵扯到内存分配:想到了用new 关键字来处理. 2:数组的定义格式 区别: 动态初始化后数组中的每一个元素的内容都是其对应数据类型的默认值,随后可以通过下标进行数组内容的修改: 如果希望数组定义的时候就可以提供内容,则采用静态初始化的方式: a:数组的动态初始化(声明并初始化数组): 数据类型 数组名称

Python 五种数据类型 在学习一门语言的过程中,首先肯定就是要先接触到它所拥有的数据类型,Python拥有五种主要的数据类型,下面介绍一下我对这五种数据类型的理解和想法. 1.数 在Python中的数主要分为四种:int(整数).float(浮点数).long(长整型)和complex(复数) 主要特别的地方就是float类型的数有一个函数round()可以取整:round(a,b):对float类型的数值a进行操作,小数点后保留b位有效数字,四舍五入,默认为1. complex类型也算是比

本文以实例形式较为详细的讲述了Python函数的用法,对于初学Python的朋友有不错的借鉴价值.分享给大家供大家参考之用.具体分析如下: 通常来说,Python的函数是由一个新的语句编写,即def,def是可执行的语句--函数并不存在,直到Python运行了def后才存在. 函数是通过赋值传递的,参数通过赋值传递给函数

本文实例讲述了Python基础学习之类与实例基本用法与注意事项.分享给大家供大家参考,具体如下: 前言 和其他编程语言相比,Python用非常少的新语法和语义将类加入到语言中.Python的类提供了面向对象编程的所有标准特性:类继承机制允许多个基类,派生类可以覆盖它基类的任何方法,一个方法可以调用基类中相同名称的的方法.对象可以包含任意数量和类型的数据.和模块一样,类也拥有Python天然的动态特性:它们在运行时创建,可以在创建后修改. Python的类

本文实例讲述了Python基础学习之时间转换函数用法.分享给大家供大家参考,具体如下: 前言 python的时间格式分为多种,几种格式之间的转换方法时常是我们遇到的而且是经常忘记的点,python不像php,时间字符串和datetime是一起的,只需要strtotime和date函数就可以相互转化.虽然网上已经有很多python时间转换的文章,但是由于作者本人经常做海外业务,需要各种时区之间的转换,所以这篇文章会对按时区转换各种时间格式做一个总结. 转换方法图示(图片转自网络):

本文实例讲述了Python基础学习之函数方法.分享给大家供大家参考,具体如下: 前言 与其他编程语言一样,函数(或者方法)是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. python的函数具有非常高的灵活性,可以在单个函数里面封装和定义另一个函数,使编程逻辑更具模块化. 一.Python的函数方法定义 函数方法定义的简单规则: 1. 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号(). 2. 任何传入参数和自变量必须放在圆括号中间.圆括号之间可以用于定义参数. 3.

一.概论 C4.5主要是在ID3的基础上改进,ID3选择(属性)树节点是选择信息增益值最大的属性作为节点.而C4.5引入了新概念"信息增益率",C4.5是选择信息增益率最大的属性作为树节点. 二.信息增益 以上公式是求信息增益率(ID3的知识点) 三.信息增益率 信息增益率是在求出信息增益值在除以. 例如下面公式为求属性为"outlook"的值: 四.C4.5的完整代码

我要回帖

更多关于 九转序列 的文章

 

随机推荐