zoukankan      html  css  js  c++  java
  • 给有C或C++基础的Python入门 :Python Crash Course 4 操作列表 4.4 -- 4.5

    上接前一篇文章。

    4.4 使用列表的一部分

      一,切片

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

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

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

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

     

    1 players = ['charles', 'martina', 'peter', 'mina']
    2 print(players[:4])
    3 print(players[0:3])
    4 print(players[1:3])
    5 print(players[2:])
    6 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)。注意,为负值时从后开始数。

      二,复制列表

    先看如下代码:

     1 names = ['peter', 'mina', 'mpeter', 'katherine']
     2 my_friends = names[:]
     3 
     4 print('I have a list of my friends:')
     5 print(names)
     6 print("However mina have a same list !")
     7 print(my_friends)
     8 print("But mike just have two in my list")
     9 mike_friends = names[0:2]
    10 print(mike_friends)

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

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

    4.5 元祖

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

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

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

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

    而若想修改,就会报错!

    1 dimensions = (1, 20, 50, 100)
    2 print(dimensions[0])
    3 print(dimensions[1])
    4 #error!!
    5 #dimensions[0] = 2
    6 #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...

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

    化繁为简 大巧不工
  • 相关阅读:
    Eloquent中一些其他的create方法
    laravel入门教程
    Eloqument 学习
    python 进程间通信(上)
    为什么寄存器比内存快?
    记录linux 命令
    linux 服务器下的基本操作
    linux 制作U盘启动,和定制系统
    kali linux 安装 matlab2016Rb
    kali linux 安装virtualbox报错(rc=-1908)
  • 原文地址:https://www.cnblogs.com/mpeter/p/9536586.html
Copyright © 2011-2022 走看看