洗礼灵魂,修炼python(6)--活起来的代码+列表
活起来的用法:
使用input内置函数

注意python2中和python3中,input函数是不太一样的,python2中,input用户传入什么类型就是什么类型而python3中,不管传入什么类型,都会变成字符串,这和python2中的raw_input函数相同,并且在python3中不再有raw_input。
有了input,就可以和用户交互,可以让代码活起来,然而你是不是觉得好像没什么鸟用对不对,用处大了,后面大部分编程都会用到它。
python几大核心之——列表(list)
1.什么是列表
列表的特征是中括号,好比字符串的特征是引号一样
2.创建一个列表的两种方式:

创建列表其中一个方式,list(),这是一个工厂函数,和其他的内置函数不太相同,记住就行,后面元组,集合,不可变集合,字典都有自己的工厂函数
3.列表的方法:

dir(),内置函数,可以查看当前函数下所有的方法,此方法非常识理解的方法,后面在函数篇和模块篇会提到
带有下划线的方法具有特殊意义,以后再说。
所以常用的列表方法有:append,count,extend,index,insert,pop,remove,reverse,sort
append:添加列表元素,但每次只能添加一个对象

注意那句【每次只能添加一个对象】

count:计数用

extend:添加另一个列表进去,与被添加列表合并

index:返回列表内元素所在索引(下标)位置

注意索引是从0开始且从左到右计数,所以元素2在索引1位置,并不是常识认为的是元素2

insert:插入元素

insert内的第一个参数是索引,第二个是要插入的元素
pop:如果不添加索引参数,则删除末尾的元素并打印,如果添加索引参数,则删除对应的索引参数并打印:

remove:给定一个元素并将其删除

reverse: 将列表内的元素顺序颠倒排列

sort: 默认按照ASCII编码由小到大给列表排序

所以如果要从大到小排列可以先用sort,再用reverse翻转过来就行。
不过其实没这么麻烦,因为sort方法还有个参数,reverse,此reverse非上面那个,此reverse是sort内的一个参数,因为其参数等于False,即默认为假,所以从小到大。而如果将reverse等于True就可以直接从大到小了。用法和后面的sorted函数几乎一样,看下面补充内容的就行。
4.列表是可变对象,支持原处修改,什么叫支持原处修改,就是增删改其内阐述,内存空间对应的id不变:

5.可以用索引访问+更改:

6.列表分片slice(列表切片):一次性获取多个列表元素

[1:3],意思是从索引位置1开始索引位置3结束,但不包括索引在3的
切片内的参数是索引,切片后不会改变其对象,若要改变得重新赋值
假如我想 把整个列表切出来呢?

像这样,索引3就代表最后一个元素,但是切不出来啊,因为不包括它的,可以这样:

省略冒号后面的元素,就可以取出最后一个元素了。当然你会想,可以省略后面,可以省略前面吗?可以的:

那可不可以都省略呢?可以的:

都省略就把整个可切片或者叫取出来了,是不是觉得有点像把整个给拷贝出来了,是的,这算是一种拷贝,后面在讲到深拷贝,浅拷贝时会继续说
又有个问题了,我不想按照这样的方式取,我只想取其中的一些,比如我要取索引1,3,5的,或者0,2,4的怎么办?
按照索引0,2,4来取:

这个[::2]写法什么意思?,第一个冒号都知道,直接拷贝整个,第二个冒号后面的2是步进长度的意思,通俗的说就是,一般人都是每迈一步就是一步的距离,偏偏有人腿长的要跨两步远,跨两步来取,也就达到了取0,2,4的效果
当然取1,3,5也是可以的:

这个列表元素少了点,换个元素多的看下:

当然步长也是可以改变的,你可以三步一取,四步一取都可以的。
其实说到这,接着说一个特殊的函数——sorted函数
sorted和sort函数有点相似,但是sorted是内置函数,而sort只是列表里的一个方法,只能对列表使用

举例:

里面的reverse参数,默认是false,即表示默认从小到大排列,如果让它为True的效果:

注意的是,使用sorted函数,只是打印出结果,不会改变其对象:

如果希望改变,需要将sorted得到的结果赋值给变量:

sorted在后面会有很大的作用,以后再说。
洗礼灵魂,修炼python(6)--活起来的代码+列表的更多相关文章
- 洗礼灵魂,修炼python(85)-- 知识拾遗篇 —— 深度剖析让人幽怨的编码
编码 这篇博文的主题是,编码问题,老生常谈的问题了对吧?从我这一套的文章来看,前面已经提到好多次编码问题了,的确这个确实很重要,这可是难道了很多能人异士的,当你以为你学懂了,在研究爬虫时你发现你错了, ...
- 洗礼灵魂,修炼python(69)--爬虫篇—番外篇之feedparser模块
feedparser模块 1.简介 feedparser是一个Python的Feed解析库,可以处理RSS ,CDF,Atom .使用它我们可从任何 RSS 或 Atom 订阅源得到标题.链接和文章的 ...
- 洗礼灵魂,修炼python(8)--高效的字典
python几大核心之--字典(dict) 1.什么是字典 学生时代都用过字典吧?用这个字的读音,偏旁就能用字典查到其相关信息,词性,意思,组词,造句,还有在什么场合下用这个字等等的. 在python ...
- 洗礼灵魂,修炼python(1)--python简介
首先,本人也是刚接触python短短几个月,没有老鸟的经验和技能,大佬勿喷,以下所有皆是本人对python的理解 python,是一种解释型(高级)的,面向对象的,带有动态语义的高级程序设计的开源语言 ...
- 洗礼灵魂,修炼python(75)--全栈项目实战篇(3)—— 账户注册登录管理系统
要求: 1.系统可以创建用户和登录用户,根据用户的输入不同,做出不同的反应(创建还是登录) 2.创建用户不能创建已存在的用户名 3.登录用户的操作最多只能有三次,超过三次冻结账户,每使用一次提示用户还 ...
- 洗礼灵魂,修炼python(21)--自定义函数(2)—函数文档,doctest模块,形参,实参,默认参数,关键字参数,收集参数,位置参数
函数文档 1.什么是函数文档: 就是放在函数体之前的一段说明,其本身是一段字符串,一个完整的函数需要带有函数文档,这样利于他人阅读,方便理解此函数的作用,能做什么运算 2.怎么查看函数文档: func ...
- python解析xml模块封装代码
在python中解析xml文件的模块用法,以及对模块封装的方法.原文转自:http://www.jbxue.com/article/16586.html 有如下的xml文件:<?xml vers ...
- 使用Python编程语言连接MySQL数据库代码
使用Python编程语言连接MySQL数据库代码,跟大家分享一下: 前几天我用python操作了mysql的数据库,发现非常的有趣,而且python操作mysql的方法非常的简单和快速,所以我把代码分 ...
- 第五篇:python基础之循环结构以及列表
python基础之循环结构以及列表 python基础之编译器选择,循环结构,列表 本节内容 python IDE的选择 字符串的格式化输出 数据类型 循环结构 列表 简单购物车的编写 1.pyth ...
随机推荐
- Html5笔记之第八天
HTML字符实体 显示结果 描述 实体名称 实体编号 空格 < 小于号 < < > 大于号 > > & 和号 & & " ...
- spring mvc 处理流程整理
1. 首先用户发送请求-->DispatcherServlet,前端控制器收到请求后自己不进行处理,而是委托给其他的解析器进行处理,作为统一访问点,进行全局的流程控制: 2. Dispatc ...
- 粗略使用.NetCore2.0自带授权登陆Authorize
上篇有朋友提及到如果nginx做集群后应该还会有下一篇文章主讲session控制,一般来说就是登陆:本篇分享的内容不是关于分布式session内容,而是netcore自带的授权Authorize,Au ...
- Maven生成可以直接运行的jar包的多种方式
Maven可以使用mvn package指令对项目进行打包,如果使用Java -jar xxx.jar执行运行jar文件,会出现"no main manifest attribute, in ...
- 消息摘要技术(MD5)
1.使用消息摘要技术对密码加密 数据库存储的是经过消息摘要技术加密之后的信息, 避免保存密码明文,提升了系统安全性 必要性说明: 如果存储明文密码,数据库系统管理员和攻破系统的黑客是可以拿到你的所有信 ...
- 车牌识别OCR—易泊时代智慧城市解决方案模块
牌识别(License Plate Recognition,LPR) 是视频图像识别技术在智能交通领域中的一个模块.车牌识别运用OCR技术,将视频流或图片中的汽车牌照从复杂的应用场景中提取并识别出来, ...
- mysql varchar和char的根本区别深度详解
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt337 VARCHAR 和 CHAR 是两种最主要的字符串类型 .不幸的是,很 ...
- Oracle数据库只读事务和无事务的区别
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt382 Oracle默认情况下(没有事务) 保证了SQL语句级别的读一致性,即 ...
- Java中的异常和处理详解
简介 程序运行时,发生的不被期望的事件,它阻止了程序按照程序员的预期正常执行,这就是异常.异常发生时,是任程序自生自灭,立刻退出终止,还是输出错误给用户?或者用C语言风格:用函数返回值作为执行状态?. ...
- PHP初入,简易网页整理(布局&特效的使用)
html><html> <head> <meta charset="UTF-8"> <title></title> ...