上接前一篇文章。

4.4 使用列表的一部分

  一,切片

  切边,顾名思义,就是处理列表的部分元素。

  我们可以联系一下C++的一段语句:for(int i = 0; i < n-2; ++i) cout << a[i];

  这句语句就是访问了一个有n个元素的数组的1--n-2个元素(下标为0--n-3)。

  而这个实现在Python中的实现如下:

 

 players = ['charles', 'martina', 'peter', 'mina']
print(players[:4])
print(players[0:3])
print(players[1:3])
print(players[2:])
print(players[-3:])

2到6的代码分别是:

  1. 打印列表中第一到第四个元素(下标为0到3)。注意,“ : x”表示下标从0到x-1。“x:”表示下标从x到n-1。
  2. ’打印列表中第一到第三个元素(下标为0到2)。
  3. 打印列表中第二到第三个元素(下标为1到2)。
  4. 从第三个元素开始打印列表元素直到末尾元素(下标从2到n-1)。
  5. 打印列表中倒数三个元素(下标为n-3到n-1)。注意,为负值时从后开始数。

  二,复制列表

先看如下代码:

 names = ['peter', 'mina', 'mpeter', 'katherine']
my_friends = names[:] print('I have a list of my friends:')
print(names)
print("However mina have a same list !")
print(my_friends)
print("But mike just have two in my list")
mike_friends = names[0:2]
print(mike_friends)

复制列表的原理其实很简单:

  声明一个列表a -> 赋值 -> 再声明一个列表b -> 从头到尾遍历列表a并同时传值到列表b -> 结束。

4.5 元祖

  在python中,将不可变的列表称为元祖。

  其实,和C++中的const定义常数组一样类似,一旦定义了则不可以修改。

定义规则如下:(用划“()”括号定义)

dimensions = (1, 20, 50, 100)
print(dimensions[0])
print(dimensions[1])

而若想修改,就会报错!

 dimensions = (1, 20, 50, 100)
print(dimensions[0])
print(dimensions[1])
#error!!
#dimensions[0] = 2
#print(dimensions[0])

同普通列表一样元祖亦可以遍历:

const_numbers = (1, 2, 3, 4, 5, 6)
for number in const_numbers:
print(number)

如果你想改变元祖的值,你只能重新定义像这样:

const_numbers = (2, 3, 4, 5, 6, 7)
for number in const_numbers:
print(number)

                      To be continued...

如有错误,欢迎评论指正!

给有C或C++基础的Python入门 :Python Crash Course 4 操作列表 4.4 -- 4.5的更多相关文章

  1. python入门-python处理csv文件格式相关

    python入门-python处理csv文件格式相关 处理 下载的csv格式文件 直接上代码和效果图 import csv from datetime import datetime from mat ...

  2. 毫无基础的人入门Python,Python入门教程

    随着人工智能的发展,Python近两年也是大火,越来越多的人加入到Python学习大军,对于毫无基础的人该如何入门Python呢?这里整理了一些个人经验和Python入门教程供大家参考. 如果你是零基 ...

  3. 0基础一分钟入门Python

    这篇文章面向所有想学python的小伙伴(甚至你从没听过编程),这篇文章将会带你以最快的速度入门python.赶快上车,时间来不及了... 一,下载和安装python 1.下载: 1.1 python ...

  4. 给有C或C++基础的Python入门 :Python Crash Course 4 操作列表 4.1--4.3

    操作列表,也就是遍历列表.本章我们要学的就是如何遍历列表. 4.1--4.2 遍历列表 遍历列表,用for循环. 不同于C++或者C语言的for循环,Python的for循环更容易让人理解. 看一个例 ...

  5. 零基础一分钟入门Python

    这篇文章面向所有想学python的小伙伴(甚至你从没听过编程),这篇文章将会带你以最快的速度入门python.赶快上车,时间来不及了... 一,下载和安装python 1.下载: 1.1 python ...

  6. Python入门学习教程:数据库操作,连接MySql数据库

    各位志同道合的同仁可以点击上方关注↑↑↑↑↑↑ 本教程致力于程序员快速掌握Python语言编程. 本文章内容是基于上次课程Python教程:Python教程:连接数据库,对数据进行增删改查操作 和py ...

  7. 【Python编程:从入门到实践】chapter4 操作列表

    chapter4 操作列表 4.1 遍历整个列表 magicians=['alice','david','carolina'] for magician in magicians: print(mag ...

  8. 毫无基础的人入门Python,Python新手入门教程2

    1.6 面向对象和内存分析086.面向对象和面向过程的区别_执行者思维_设计者思维087.对象的进化故事088.类的定义_类和对象的关系089.构造函数__init__090.实例属性_内存分析091 ...

  9. python入门-python解释器执行

    最近由于公司需要,接触了python这门神奇的语言,给我的感觉就是开发快速和代码简洁. 开始还是先罗列一下解释性语言和编译性语言的差别吧0.0!   编译性语言:是在程序运行前,需要专门的一个编译过程 ...

随机推荐

  1. JSP Filters(过滤器)

    Filter是拦截Request请求的对象:在用户的请求访 问资源前处理ServletRequest以及ServletResponse,它可 用于日志记录.加解密.Session检查.图像文件保护 等 ...

  2. NPOI操作Excel(一)--NPOI基础

    用C#读取Excel的方法有很多中,由于近期工作需要,需要解析的Excel含有合并单元格以及背景色等特殊要求,故在网上查了一些关于读Excel的方法的优缺点,觉得NPOI能满足我的需要,所以搜索了一些 ...

  3. Description Resource Path Location Type Project configuration is not up-to-date with pom.xml. Select: Maven->Update Project... from the project context menu or use Quick Fix. spark-MT line 1 Maven Co

    1.相信大家新建的maven项目,然后添加好依赖(即修改了pom.xml文件以后就会出现如下所示的错误): Description Resource Path Location Type Projec ...

  4. OAuth2:隐式授权(Implicit Grant)类型的开放授权

    适用范围 仅需临时访问的场景 用户会定期在API提供者那里进行登录 OAuth客户端运行在浏览器中(Javascript.Flash等) 浏览器绝对可信,因为该类型可能会将访问令牌泄露给恶意用户或应用 ...

  5. ArcGIS Engine 10.x许可代码

    相比9.3,10.x许可代码的书写改变了,ArcObjects SDK 10 Microsoft .NET Framework 帮助文档中,提供了以下两种方式: 1. Calling RuntimeM ...

  6. php第二天 开始连接数据库

    php连接数据库有三种方法,分别是mysqli面向对象,mysqli面向过程,pdo. 1.查了资料,最终选择则了mysqli面向过程的方式,运行效率应该要高一些. 代码如下 <?php $se ...

  7. TCP/UDP 协议,和 HTTP、FTP、SMTP,区别及应用场景

    一.OSI 模型 OSI 模型主要作为一个通用模型来做理论分析,而TCP/IP 协议模型是互联网的实际通讯协议,两者一般做映射分析,以下不做严格区分和声明(好吧,比较懒): OSI 整个模型层次大致可 ...

  8. 不同路径II(一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。 现在考虑网格中有障碍物。那么从左上角到右下角将会有多少条不同的路径?网格中的障碍物和空位置分别用 1 和 0 来表示。)

    示例 1: 输入: [   [0,0,0],   [0,1,0],   [0,0,0] ] 输出: 2 解释: 3x3 网格的正中间有一个障碍物. 从左上角到右下角一共有 2 条不同的路径: 1. 向 ...

  9. String.IsNullorEmpty()方法的使用

    != null 就是不为null !string.IsNullOrEmpty  不是null且不是""(string.Empty)

  10. LRU缓存,大神写的,值得借鉴

    http://blog.csdn.net/beiyeqingteng/article/details/7010411