python6翻_洗礼灵魂,修炼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在后面会有很大的作用,以后再说。
那么既然都说到sorted,再说说reversed
reversed() #和list.reverse实现方式一样,让参数翻转排列
例:
reversed比sorted功能少很多
reversed用得倒很少,不过你得知道有这么个用法
python6翻_洗礼灵魂,修炼python(6)--活起来的代码+列表相关推荐
- python3 x完全兼容_中国大学MOOC: Python 3.x 系列版本代码完全兼容 Python 2.x系列的既有语法。...
中国大学MOOC: Python 3.x 系列版本代码完全兼容 Python 2.x系列的既有语法. 答:错 业务流程改造后组织的特征是 答:组织扁平化 提高经济效益 提高组织效率 能更快地为顾客服务 ...
- python执行js文件报错_使用PyV8在Python爬虫中执行js代码
前言 可能很多人会觉得这是一个奇葩的需求,爬虫去好好的爬数据不就行了,解析js干嘛?吃饱了撑的? 搜索一下互联网上关于这个问题还真不少,但是大多数童鞋是因为自己的js基础太烂,要么是HTML基础烂,要 ...
- 洗礼灵魂,修炼python(85)-- 知识拾遗篇 —— 深度剖析让人幽怨的编码
编码 这篇博文的主题是,编码问题,老生常谈的问题了对吧?从我这一套的文章来看,前面已经提到好多次编码问题了,的确这个确实很重要,这可是难道了很多能人异士的,当你以为你学懂了,在研究爬虫时你发现你错了, ...
- 洗礼灵魂,修炼python(8)--高效的字典
python几大核心之--字典(dict) 1.什么是字典 学生时代都用过字典吧?通过这个字的读音或者偏旁就能用字典查到其相关信息,词性,意思,组词,造句,还有在什么场合下用这个字等等的. 在pyth ...
- 洗礼灵魂,修炼python(1)--python简介
首先,本人也是刚接触python不久,没有老鸟的经验和技能,大佬勿喷,以下所有皆是本人对python的理解 python,是一种解释型(高级)的,面向对象的,带有动态语义的高级程序设计的开源语言.19 ...
- 洗礼灵魂,修炼python(21)--自定义函数(2)—函数文档,doctest模块,形参,实参,默认参数,关键字参数,收集参数,位置参数...
函数文档 1.什么是函数文档: 就是放在函数体之前的一段说明,其本身是一段字符串,一个完整的函数需要带有函数文档,这样利于他人阅读,方便理解此函数的作用,能做什么运算 2.怎么查看函数文档: func ...
- python使用复合语句def创建函数对象_【收藏】Python实用技巧-成为Pythoner必经之路...
前言 本文主要记录 Python 中一些常用技巧,所描述的是告诉你怎么写才是更好? 如果你并不熟悉Python语法,希望你能在下面代码片段中看到Python的简单.优雅; 如果你象我这样,对 Pyt ...
- pythonscrapy爬虫_零基础写python爬虫之使用Scrapy框架编写爬虫
网络爬虫,是在网上进行数据抓取的程序,使用它能够抓取特定网页的HTML数据.虽然我们利用一些库开发一个爬虫程序,但是使用框架可以大大提高效率,缩短开发时间.Scrapy是一个使用Python编写的,轻 ...
- python编程基础_月隐学python第2课
python编程基础_月隐学python第2课 学习目标 掌握变量的输入和输出 掌握数据类型的基本概念 掌握算数运算 1.变量的输入和输出 1.1 变量输入 使用input输入 input用于输入数据 ...
最新文章
- AE 各分析适用数据
- coreldraw 导入面料_Coreldraw文件导入Photoshop方法
- Tomcat启动报404(eclipse)
- How to use external classes and PHP files in Laravel Controller?
- Java面试2021,java黑马百度云
- 子网掩码与子网个数、主机地址个数的关系
- 简述工业机器人示教再现的一般步骤_基于激光焊缝跟踪传感器的工业机器人焊缝跟踪系统的应用焊接寻位...
- beginnersbook C 语言教程·翻译完成 | ApacheCN
- redis数据库无法写入导致的bug
- 【转】互联网架构的三板斧
- SQL优化常用方法51
- AutoCAD 版本历史 版本代号
- C++ Vector初始化(一维,多维)
- 3dmax如何建模(二)
- UE4 3DUI Widget半透明渲染模糊和重影问题
- [ZJOI2014]力 题解
- Codevs 1066 引水入城 2010年NOIP全国联赛提高组 BFS + 贪心
- 光敏电阻规格型号的含义解读研究总结
- 右手螺旋判断磁感应强度方向_右手螺旋定则判断磁场方向
- logback系列之四:输出日志到不同文件
热门文章
- 为什么远程桌面不能复制?解决方法
- ssh_exchange_identification: Connection closed by remote host 解决方法
- Mac 下GitHub 访问慢解决方案
- 【Java面试题】21 Java中的异常处理机制的简单原理和应用。
- SQL Server主从数据库同步方式及同步问题解决方案总结
- AppStore IPv6-only审核被拒原因分析及解决方案-b
- RedHat7.4最小化安装yum源不可用问题解决
- 常用的数据分析图表及方法介绍
- HACKER'S DELIGHT[算法心得]笔记
- C++异常实现与longjmp, setjmp,栈指针EBP, Active Record