学习任何一门技术,最重要的是逻辑而不是内容,仅会内容,我们仅仅是技术的使用者,但如果我们懂得了技术背后的逻辑,我们就是技术的创造者,所以同样领域的工作,有人月入5千,有人月入5万,就是这个差别;


学技能,我们要有悟性,悟性不能教授,只能自己体会,世间万物普遍的规律和逻辑,能说的清的叫德,德就是功能和技巧,说不清的是道,道是真理和规律,道不能言说,不立文字,只能自己悟;


知识靠传授

方法靠示范

智慧靠启迪


文:朱元禄(jacky)

对于Python来说,基础内容要掌握的无外乎就是Python的六种数据类型,而对于数据类型来说,最重要的就是要掌握它们各自的使用功能(详细内容解释请参见:秒懂数据类型的真谛-Python基础前传(4));

在实际工作中,基础数据类型里最常使用的就是列表(list),关于如何学习和领会列表的使用功能,jacky会按照自己的逻辑体会,把我的学习思路介绍给大家,我把列表的常用功能划分为增、删、改、查、补,五类,下面jacky将详细介绍下列表使用方法。

(一)增

  • 增的常用的方法有三种:

    • list.append

    • list.insert

    • list.extend()

1.1 append方法 :在列表的末尾追加

jacky = [1,2,3,4,5,6]
jacky.append(100)
print(jacky)
>>>[1,2,3,4,5,6,100]

1.2 insert方法 :在指定位置追加

#第一个位置追加0,那么操作方法是jacky.insert(0,0)
jacky = [1,2,3,4,5,6]
jacky.insert(0,0)
>>>[0,1,2,3,4,5,6]

1.3 extend方法:在末尾追加(可以是列表或元祖)

jacky = [1,2,3,4,5,6]
jacky.extend([3,2,1])
>>>[1,2,3,4,5,6,3,2,1] jacky = [1,2,3,4,5,6]
jacky.extend((3,2,1))
>>>[1,2,3,4,5,6,3,2,1]]

(二)删

  • 删的常用的方法有三种:

    • del list[x]

    • list.pop(x)

    • list.remove(x)

2.1 del list[x]方法

jacky = [1,2,3,4,5,6]
del jacky[0]
>>>[2,3,4,5,6] jacky = [1,2,3,4,5,6]
del jacky[-1]
>>>[1,2,3,4,5]

2.2 list.pop(x)方法  

  • list.pop(x)方法来操作删除指定元素,如果移除不指定列表中的一个元素(默认最后一个元素),并且返回该元素的值。
jacky = [1,2,3,4,5,6]
jacky.pop(0)
>>>[2,3,4,5,6]

2.3 list.remove(x)方法  

  • list.remove(x)方法来操作删除指定元素,如果有重复项元素,默认移除第一个元素值。

      
jacky = [1,2,3,4,5,6,10,7,10]
jacky.remove(10)
>>>[1,2,3,4,5,6,7,10]

(三)改

  • 将预先定义好的列表中的值进行替换
jacky = [1,2,3,4,5,6]
jacky[0] = 0
>>>[0,2,3,4,5,6] jacky = [1,2,3,4,5,6]
jacky[-1] = 0
>>>[1,2,3,4,5,0]

(四)查

  • 即根据列表下标索引查询
jacky = [1,2,3,4,5,6]
jacky[0]
>>>1

(五)补

5.1 for循环

  • 遍历计算列表a = [1,1,2,3,4,1,1,10]中1的个数
jacky = [1,1,1,,2,3,4,1,1,6]
count = 0
for i in jacky:
if i == 1:
count +=1
print(count)
>>>5

5.2 高阶函数

jacky = [1,1,1,,2,3,4,1,1,6]
e = [x for x in jacky if x==1]
len(e)
>>>5

5.3 内建函数- count

jacky = [1,1,1,,2,3,4,1,1,6]
jacky.count(1)
>>>5

5.4 内建函数- index

  • 根据列表中的值算出下标索引值
jacky = [1,2,3,4,5,6]
jacky.index(1)
>>>2

5.5 切片

jacky = [1,2,3,4,5,6]
jacky[1:]
>>>[2,3,4,5,6]

5.6 其他内建函数 

  • list.sort():列表的升序排列

  • list.reverse():列表的反向排序

  • list(seq):将元组转换为列表

  • len(list):列表元素长度

  • max(list):返回列表元素最大值

  • min(list):返回列表元素最小值

  • cmp(list1, list2):比较两个列表的元素

5分钟记住列表的使用功能-Python基础前传(7)的更多相关文章

  1. 快速掌握Python的捷径-Python基础前传(1)

    文: jacky(朱元禄) 开文序 最近看新闻,发现高考都考Python了,随着人工智能的火热,学数据科学的人越来越多了!但对于数据行业本身来说,现象级的火热,这并不是什么好事. 方丈高楼平地起,无论 ...

  2. 字典-Python基础前传(9)

    (一)Python中为什么要有字典 jacky说科学存在的逻辑只有两个: 1.解释问题 2.解决问题 我们明白了科学的逻辑,我们理解任何的知识和技能,都是很简单的 之前jacky跟大家说list因为太 ...

  3. Python数据类型之数值-Python基础前传(5)

    学习任何一门学科或者手艺,最忌讳的就是想的太多,做的太少: 有很多朋友私信问我:jacky,我们该如何选择Python的课程?或是我们该如何选择Mysql课程?到底谁的课件和书籍才是最好的? 借着今天 ...

  4. 秒懂数据类型的真谛—Python基础前传(4)

    一切编程语言都是人设计的,既然是人设计的,那么设计各种功能的时候就一定会有它的道理,那么设计数据类型的用意是什么呢? (一) 基本数据类型 基本数据类型: 数字 int 字符串 str 布尔值 boo ...

  5. 两个字说清楚编程语言实质-Python基础前传(3)

    大家都知道Python对于数据分析而言,意义重大.但对于运用Python来做数据分析的我们来说,学习一门编程语言,却有不小的难度:首先大部分伙伴不是计算机相关专业的科班出身,其次我们基本上也都没有程序 ...

  6. 函数第一部分:经典的永远是简单的-Python基础前传(10)

    (一)前言 对于零基础学习Python的朋友,或者转行做数据分析的朋友,跟jacky交流最多的问题就是Python网络爬虫学习问题,比如说要爬取美团,或者说爬取携程等等,在爬取的过程中,这些朋友总是会 ...

  7. 函数第二部分:为什么说动态参数是没有计划好的参数-Python基础前传(11)

    动态参数1-一个星号变元组 动态参数存在的意义? 函数的作者有时候也不知道这个函数到底需要多少个参数,这时候动态参数就有存在的意义了 动态参数创建-加* 底层原理是:把数值型或其他数据类型变成了元组类 ...

  8. Python基础--动态传参

    形参的顺序: 位置 *arg     默认值  **args  ps:可以随便搭配,但是*和**以及默认值的位置顺序不能变 *,** 形参:聚合 位置参数* >>元祖 关键字** > ...

  9. Python基础:开篇

    一.概述 Python基础 是对 Python(2.7版本)基本语法的要点总结,主要参考了以下资料: Python核心编程(第二版) Learning Python (3rd Edition) Pyt ...

随机推荐

  1. taglist and nerdtree

    函数:function! s:Tlist_Window_Exit_Only_Window()中的winbunr(2)改为winbunr(3),即只剩2个窗口时关闭,考虑到2个窗口肯定是同时存在,所以这 ...

  2. RE:ゼロから始める AFO 生活

    新建这篇博客的时候发现自己在NOI之后只发过两三篇博客,而且都基本上没什么实质性内容. 果然是巨大混混人啊. 本文承接上篇(不过好像烂尾了),旨在记录一些有趣(?)的内容. 12.23 北大集训过去好 ...

  3. 解决tensorflow 调用bug Running model failed:Invalid argument: NodeDef mentions attr 'dilations' not in Op<name=Conv2D; signature=input:T, filter:T ->

    将tensorflow C++ 版本更新为何训练版本一致即可

  4. 基于【 centos7】三 || 分布式文件系统FastDFS+Nginx环境搭建

    1. FastDFS介绍 1.1 FastDFS定义 FastDFS是用c语言编写的一款开源的分布式文件系统.FastDFS为互联网量身定制,充分考虑了冗余备份.负载均衡.线性扩容等机制,并注重高可用 ...

  5. 字蛛webfont 安装及使用方法

    先安装nodejs和git,比如放在D:/nodejs/  文件夹 cmd 进入该文件夹,安装npm install express 安装 npm install font-spider -g 安装  ...

  6. React中setState如何修改深层对象?

    在React中经常会使用到setState,因为在react生态中,state就是一切.在开发过程中,时长会在state中遇到一些比较复杂的数据结构,类似下面这样的: 这时需要我们修改list中obj ...

  7. iOS中的分类(category)和类扩展(extension)

    今天在研究swift的时候看到了分类和扩展.这是两个十分重要有用的功能,但是之前用的不多,没有深入了解过,在今天就从头理一遍. 一.分类(Category): 概念: 分类(Category)是OC中 ...

  8. swoole| swoole 协程初体验 转

    swoole| swoole 协程初体验   date: 2018-5-30 14:31:38title: swoole| swoole 协程初体验description: 通过协程的执行初窥 swo ...

  9. python2,3区别

      Python2 Python3 default charset ascii(can change) utf-8 print 可不加括号 必须加 range 有xrange()生成器 可转换为ran ...

  10. git切换账号邮箱

    git config user.name 查看当前用户名 git config user.email 查看当前邮箱 git config --global user.name "用户名&qu ...