• 《程序员的办公室日常》第二回 拜师


    第二天,阿中“准时”的走到办公室,在劈里啪啦的键盘敲击声中来到自己的工作坐下。

    “美好的一天又开始了。”

    阿中正在想着今天的工作从何处做起,突然被一声娇嫩的异性声音打断注意力。

    “师父好”

    原来是新来的小美女斯斯不知何时已经站在了自己的身后。

    “我是新来的,对咱们部门的相关情况了解不多,请师父多多关照。”

    阿中盯着眼前这张娇羞可爱的脸,楞了一会儿,才反应过来。

    聊了一些单位的情况后,阿中说道:

    “你刚来,还是要打好基础,相信你的理论水平是没问题的,但是是锻炼动手能力,先从python开发开始吧,我先给你看一个学习python的知识图谱,然后从python基础知识讲起。”

     

     

    对于每一门编程语言来说,数据结构都是其根基。今天先讲Python 中最常见的两种数据结构:列表(list)和元组(tuple)。

    列表和无线都是一个可以放置任意数据类型的有序集合,当然他们是有区别的:

    列表是动态的,长度大小不固定,可以随意地增加、删减或者改变元素(mutable)。

    元组是静态的,长度大小固定,无法增加删减或者改变(immutable)。

    可以看下面的示例代码,列表可以被轻松修改值,而同样的操作元组被报错:

     1 l = [1, 2, 3, 4]
     2 
     3 l[3] = 40 # 和很多语言类似,python中索引同样从0开始,l[3]表示访问列表的第四个元素
     4 
     5 l
     6 
     7 [1, 2, 3, 40]
     8 
     9 
    10 tup = (1, 2, 3, 4)
    11 
    12 tup[3] = 40
    13 
    14 Traceback (most recent call last):
    15 
    16   File "<stdin>", line 1, in <module>
    17 
    18 TypeError: 'tuple' object does not support item assignment

     

    这是为什么呢?

    因为列表在内存中分配的是动态空间,如果需要增加,只需要在动态空间末尾加入元素就可以了,而元组在内存中分配的是静态空间,如果需要修改元组的数值,需要重新开辟一片新的内存空间。

    再来看一下列表和元组支持的其它操作吧。

    1. Python 中的列表和元组都支持负数索引,-1 表示最后一个元素,-2 表示倒数第二个元素,以此类推。

    2. 列表和元组都支持切片操作,可以查找子列表和子元组

    3. 列表和元组都可以随意嵌套

    4. 两者也可以通过 list() 和 tuple() 函数相互转换:

    5. 有很多常用的内置函数,比如count(),index()等

    那么列表和元组到底用哪一个呢?这个需要具体情况具体分析。

    1. 如果存储的数据和数量不变,比如你有一个函数,需要返回的是一个地点的经纬度,然后直接传给前端渲染,那么肯定选用元组更合适。

    2. 如果存储的数据或数量是可变的,比如社交平台上的一个日志功能,是统计一个用户在一周之内看了哪些用户的帖子,那么则用列表更合适。

    ”哇,师父讲的好简洁易懂!“

    阿中第一次被美女徒弟夸奖,内心瞬间产生些许波澜,但阿中仍故作镇静的回道:

    ”我向来如此。“

    说完赶紧把脸转到另一侧,生怕被别人看见自己已经滚烫的脸。

  • 相关阅读:
    杭电ACM 1197
    杭电ACM 1196
    杭电ACM题目分类
    杭电ACM 1178
    指针转化(二重)
    怎么查看一个类的内存分布
    how find out what is causing Visual Studio to think each project is out of date
    MSB8013
    File mapping
    SHFileOperation 解决double-null terminated
  • 原文地址:https://www.cnblogs.com/jpcflyer/p/12373579.html
Copyright © 2020-2023  润新知