Python学习一:序列基础详解
作者:NiceCui
- 本文谢绝转载,如需转载需征得作者本人同意,谢谢。
- 本文链接:http://www.cnblogs.com/NiceCui/p/7858473.html
- 邮箱:moyi@moyibolg.com
- 日期:2017-11-18
Python学习一:序列基础详解
一:序列介绍
Python中一些类型的变量,就像容器一样,收纳多个数据,序列就像一个有序的队伍,像整齐的万里长城,存储着各种各样的数据,他们按照一定的秩序排列在一起,很威武,很美观,所以说序列是有序的数据集合。序列包含的一个数据被称作序列的一个元素。序列可以包含一个或者多个元素,也可以没有任何元素的空序列。
二:序列分类
序列有两种,分别是元组(Tuple)和列表(List)。
两者的主要区别是:一旦建立有效的序列,远组的各个元素不可以再被修改和变更,将会变成一组固定的元素。所以元组跟像是一个特殊的表,数据是固定的,很多人都管它叫“定值表”。
三:元组和列表建立
'''
Created on 2017年11月18日 @author: NiceCui
'''
'-----------------------tuple 元组------------------------------' tuple = (2,3,"good","hello tuple",666,"你好") print(tuple[0])
print(tuple[1])
print(tuple[2])
print(tuple[3]) '结果:'
'>>> 2'
'>>> 3'
'>>> good'
'>>> hello' '-----------------------List 列表------------------------------' list = [1,2,"list",6,"python"] print(list[0])
print(list[1])
print(list[2])
'''
'>>> 1'
'>>> 2'
'>>> list'
'''
这是使用eclipse上写的python,不清楚怎么使用eclipse安装python插件的同学可以看看我Python随笔分类中有介绍怎么使用eclipse安装python插件;
安装插件教程:http://www.cnblogs.com/NiceCui/p/7858107.html
从上面的的例子可以看出,同一个序列可以有包含不同类型的元素,这也是python动态类型的一个体现,还有,序列元素不仅可以是基本类型的数据,还可以是另外一个类型的序列。这也是和java语言上有点差别的,使用Python语言书写序列会显得很简单感觉功能十分强大。
四:嵌套和固定的展示
列表内部嵌套列表
'''
Created on 2017-11-18
@author: NiceCui
''' next_list = [1,[3,"hello",4,5]] print(next_list[0])
print(next_list[1][0])
print(next_list[1][1]) '''
'>>> 1'
'>>> 3'
'>>> hello'
'''
元组不能改变数据的缘由,很少去建立一个元组,但是序列可以增加和修改元素,所以序列经常被用作去建立一个空表;
'''
空列表
''' next_list = []
五:序列的数据读取
刚才上方的小例子中已经展示了怎么使用下标去找到单个元素,当然还可以通过范围的引用方式去找到多个元素
范围引用的基本样式
序列名[下限:上限:步长]
下限表示起始下标,上限表示结尾下标。在起始和结尾下标之间,按照步长的间隔来找到元素。
如果默认步长为1,也即是上限和下限之间的每隔1个元素都会出现在结果中。引用多个元素将成为一个新的序列。接下来做一个小的例子:
list = [1,2,"list",6,"python"] print(list[0])
print(list[1])
print(list[2]) print(list[:6]) # 下标 0 ~ 5 的元素都输出 print(list[2:]) # 下标 2 ~ 最后一个 元素都输出 print(list[0:6:2]) # 下标 0 2 4 元素都输出 print(list[2:0:-1]) # 下标 2 1 元素都输出 sliced = list[2:0:-1] type(sliced) # 范式引用的结果是一个元组
除此之外Python还提供了一个尾部引用的语法,用于引用序列尾部的元素:
'''
Created on 2017-11-18
@author: NiceCui
''' if __name__ == '__main__':
pass list = [1,2,"list",6,"python"] print(list[-1]) # 返回序列最后一个元素 print(list[-3]) # 返回序列倒数第三个元素 print(list[1:-1]) # 返回序列倒数第2个元素 和倒数第2个元素
Python学习一:序列基础详解的更多相关文章
- Python学习笔记:函数详解(下)
本文介绍:高阶函数,嵌套函数,以及由前面两个组成的装饰器 一.高阶函数:以下两种情况都是高阶函数 1.将函数名当成参数传递给另外一个函数(作用:不修改被传递函数源代码就可以添加新功能): impo ...
- Python学习二:词典基础详解
作者:NiceCui 本文谢绝转载,如需转载需征得作者本人同意,谢谢. 本文链接:http://www.cnblogs.com/NiceCui/p/7862377.html 邮箱:moyi@moyib ...
- 深入浅出DOM基础——《DOM探索之基础详解篇》学习笔记
来源于:https://github.com/jawil/blog/issues/9 之前通过深入学习DOM的相关知识,看了慕课网DOM探索之基础详解篇这个视频(在最近看第三遍的时候,准备记录一点东西 ...
- Python绘制六种可视化图表详解,三维图最炫酷!你觉得呢?
Python绘制六种可视化图表详解,三维图最炫酷!你觉得呢? 可视化图表,有相当多种,但常见的也就下面几种,其他比较复杂一点,大都也是基于如下几种进行组合,变换出来的.对于初学者来说,很容易被这官网上 ...
- Python包模块化调用方式详解
Python包模块化调用方式详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一般来说,编程语言中,库.包.模块是同一种概念,是代码组织方式. Python中只有一种模块对象类型 ...
- [深入学习Web安全](5)详解MySQL注射
[深入学习Web安全](5)详解MySQL注射 0x00 目录 0x00 目录 0x01 MySQL注射的简单介绍 0x02 对于information_schema库的研究 0x03 注射第一步—— ...
- python学习日记(基础数据类型及其方法01)
数字 int 主要是用于计算的,常用的方法有一种 #既十进制数值用二进制表示时,最少使用的位数i = 3#3的ASCII为:0000 0011,即两位 s = i.bit_length() print ...
- Shell学习之Bash变量详解(二)
Shell学习之Bash变量详解 目录 Bash变量 Bash变量注意点 用户自定义变量 环境变量 位置参数变量 预定义变量 Bash变量 用户自定义变量:在Bash中由用户定义的变量. 环境变量:这 ...
- Python中的高级数据结构详解
这篇文章主要介绍了Python中的高级数据结构详解,本文讲解了Collection.Array.Heapq.Bisect.Weakref.Copy以及Pprint这些数据结构的用法,需要的朋友可以参考 ...
随机推荐
- HDU5661 Claris and XOR
我们求二进制是怎么求的呢:先看看二进制的每一位代表多大:.......32 16 8 4 2 1 假如n=10, ..... 32>n ,不要. 16>n,不要. 8<=n,要,然后 ...
- mybatis一对一嵌套查询
要求:查询一个员工的时候,把他对应的部门也查询出来 实现(其他配置这里不作说明,框架基于spring_springMVC_mybatis_oracle): 如有不对或不适的地方,请多多指教. 1.新建 ...
- Uploadify 3.2上传文件,限制类型,大小,传递参数等
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="upload.aspx.cs ...
- WebApi实现自定义错误日志
一.Mvc错误处理默认有添加HandleErrorAttribute默认的过滤器,但是我们有可能要捕捉这个错误并记录系统日志那么这个过滤器就不够用了,所以我们要自定义Mvc及Web Api各自的错误处 ...
- idea web项目动态部署
最近通过idea新创建一个web项目,想让web项目的前后端代码都动态部署.虽然网络上已经有了不少文章,但我自己还是有遇到一些坑,因此总结一下我遇到的坑的经验. 项目的web容器用的是本地的tomca ...
- iOS自动化环境搭建——macaca
macaca-java for ios 自动化环境搭建 基础原理解析:https://testerhome.com/topics/6608 一.环境搭建 1.安装eclipse; -----Java开 ...
- JAVAEE企业级应用开发浅谈第二辑:MVC和三层架构
上海尚学堂警句:一份信心,一份努力,一份成功:十分信心,十分努力,十分成功. Step1.情景概要 Hello,小伙伴们,昨天跟大家分享了JAVA EE 企业级应用开发中大家耳熟能详的概念-三层架构, ...
- Angular4 后台管理系统搭建(10) - 做一个通用的可跨域上传文件的组件
写的很慢,不知不觉这是第十篇了.但是我其他事情太多,只能抽空写下.现在angular4或angular2流行的上传方式是ng2-file-upload.它的功能很强大.但是我没有配置成可以跨域上传的. ...
- 什么是git?window下安装git
一:Git是什么? Git是目前世界上最先进的分布式版本控制系统. 二:SVN与Git的最主要的区别? SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以 ...
- Ceph和Openstack的cinder模块对接方法
1.创建存储池 在ceph节点中执行如下语句. #ceph osd pool create volumes 2.配置 OPENSTACK 的 CEPH 客户端 在ceph节点两次执行如下语句,两次{y ...