重读LPTHW-Lesson25
1.ex25接触了字符串函数split()、列表函数sorted()、pop()函数,整理一下其用法以及其他常见的字符串、列表操作函数如下。
(1)split()函数
split()是拆分字符串函数,通过指定分隔符对字符串进行切片,返回分割后的字符串组成的列表(list),每个字符串也可以赋值(或者该称为解包?)给新的变量
语法:str.split(str="",num)[n]
参数解释:str表示分隔符,默认为空格 ,不能为空("");若字符串中没有分隔符,则把整个字符串作为列表的一个元素并返回列表。
num表示分隔次数,默认为最大分隔次数;若指定num值,则分隔为num+1项。
①按默认字符分隔
str = "www.cnblogs.com"
print str
str_split = str.split() #使用默认参数
print str_split
输出:
②以"."为分隔符
str_split = str.split(".")
print str_split
输出:
分隔n次
print str.split(".",0) #分隔0次
print str.split(".",1) #分隔1次
print str.split(".",2) #分隔2次
输出:
分隔2次并取序列为1的项
print str.split(".",2)[1] #分隔2次,取序列为1的项
输出:
③分隔后把分隔的字符串赋值给变量
str1,str2,str3 = str.split(".",2)
print str1
print str2
print str3
输出:
(2)join()函数和split()相反,用来连接字符串
用法如下:
list = ['My','name','is','Jer']
print ' '.join(list)
print '_'.join(list)
print '..'.join(list)
输出:
(3)sorted()函数
Python中排序有两种 一种是内建函数sorted(),它生成一个新的排好序的列表;一种是sort方法,它直接对列表排序。
sorted():有四个参数,sorted(iterable,cmp=none,key=none,reverse=False):①其中iterable是排序的对象,中文意思是迭代器,包括字符串、列表、字典等对象类型
②cmp指定一个定制的比较函数,这个函数接收两个参数(iterable的元素),如果第一个参数小于第二个参数,返回一个负数;如果第一个参数等于第二个参数,返回零;如果第一个参数大于第二个参数,返回一个正数。默认值为None
③key指定一个接收一个参数的函数,这个函数用于从每个元素中提取一个用于比较的关键字。默认值为None
④reverse是一个布尔值,表示排列的顺序,为True则表示从大到小。默认为False。
下面来看实例:
A.基本用法:

可以看出,list.sort()方法会修改原始的list,返回none;而sorted(list)则返回一个新的排序列表。另需注意,list.sort()只为列表(list)定义,sorted()函数适用于一切迭代器。
B .key function应用
①按照列表中元素的长度排序:
def func(x):
return len(x)
list = ['Python','is','a','great','language']
print sorted(list,key = func)
输出:
②转换列表中元素为小写后在排序
list = ['zza','AAz','nnew','Merww']
print sorted(list,key = str.lower) #转换大小写后排序
输出:
2.常见的list列表函数及操作
(1)list()将字符串转为列表

(2)len()获得list元素的个数

(3)利用索引获得list中相应位置的元素。索引从0开始,0表示第一个元素,-1则可表示最后一个元素,类似的,-2表示倒数第二个元素

(4)利用索引可以直接将相应位置的元素重新赋值

(5)list切片操作 利用list的切片,可以轻松地获得列表的部分元素
①取出部分元素

如实例可见 list[index1:index2]将显示列表从list[index1]到list[index2-1]的元素,list[index2]不显示;在省略index1时即list[:index2],默认index1 = 0;省略index2即list[index1:],默认index2=len(list).故,list[:] = list[:-1],它将显示整个列表
②修改元素

(6)insert()方法 往list的某个位置插入字符串、列表时,字符串的每个字符、列表的每项都作为list的一个元素插入,而不是整体插入。若要整体插入,则可使用list的insert方法

(7)append方法 list是有序的列表,list的append方法可以在list的末尾追加新的元素

(8)pop方法 pop(index)可以删除列表中指定位置的元素,并返回该元素。若省略index值,则删除并返回最后一个元素

(9)remove()方法 删除第一个指定元素

利用循环,可以删除所有的某个指定元素

(10)index方法 index方法用来寻找列表中与指定的元素相匹配的第一个匹配项的位置亦即索引

若指定元素在列表中不存在,会触发一个异常。
重读LPTHW-Lesson25的更多相关文章
- LPTHW 结束了
基本上在学习了LPTHW的 类 继承 和 合成以后基本就结束. 后面几章都是根据web.py进行网页编程,以及自动化测试的.目前来看不太感兴趣. 稍后我可能找个实际项目进行锻炼下,比如 Crossin ...
- LPTHW 笨办法学python 40章 类
今天读了LPTHW的第40章以后豁然开朗,原来一直愚钝,不太理解类的定义和使用,还有就是不太理解关于self的定义. class MyStuff(object): def __init__(self) ...
- 重读 code complete 说说代码质量
重读code complete 说说代码质量 2014年的第一篇文章本来计划写些过去一年的总结和新年展望,但是因为还有一些事情要过一阵才能完成,所以姑且不谈这个,说说最近重读code complete ...
- 不忘初心 --- 重读<<The C Programming Language>>
这篇文章应该发布在好几年前,2011年计算机界大师Dennis Ritchie仙逝,那时对大师的映象还停留在大一刚学编程时:Unix的合作开发者,C语言的发明人.通过网上的纪念文章<<Un ...
- 重读COM技术内幕(inside com)有感
重读COM技术内幕(inside com)有感 面向对象设计哲学在复杂领域并不能很好地解决问题.参考(http://www.richardlord.net/blog/what-is-an-entity ...
- 重读redis设计与实现
重读了一遍redis设计与实现,这次收获也不错,把之前还有些疑惑的点:redis跳跃表的原理.redis持久化的方法.redis复制.redis sentinel.redis集群等,都重新熟悉了一遍, ...
- React.js 小书 Lesson25 - 实战分析:评论功能(四)
作者:胡子大哈 原文链接:http://huziketang.com/books/react/lesson25 转载请注明出处,保留原文链接和作者信息. (本文未审核) 目前为止,第二阶段知识已经基本 ...
- (名词 形容词 动词 副词)重读&(冠词 介词 连词 代词 辅助词(Be))弱读
二,一些发音规则 除了上面的练习之外,这里还有几个注意点需要我们有足够的认识,那就是英语有重读.弱读.连读.爆破.语感(节奏和断句)等(其实当你跟读并背诵新概念之后,这一切都是神马,你不知觉地也会发现 ...
- 重读《学习JavaScript数据结构与算法-第三版》-第2章 ECMAScript与TypeScript概述
定场诗 八月中秋白露,路上行人凄凉: 小桥流水桂花香,日夜千思万想. 心中不得宁静,清早览罢文章, 十年寒苦在书房,方显才高志广. 前言 洛伊安妮·格罗纳女士所著的<学习JavaScript数据 ...
- 重读《学习JavaScript数据结构与算法-第三版》- 第4章 栈
定场诗 金山竹影几千秋,云索高飞水自流: 万里长江飘玉带,一轮银月滚金球. 远自湖北三千里,近到江南十六州: 美景一时观不透,天缘有分画中游. 前言 本章是重读<学习JavaScript数据结构 ...
随机推荐
- FastJSON 简单使用
FastJSON是一个Java语言编写的高性能,功能完善,完全支持http://json.org的标准的JSON库.多了不说了,百度一下一大把. 在此,简单的总结一下自己用过,测试过的方法. 如果使用 ...
- css布局学习笔记之box-sizing
当你设置了元素的宽度,实际展现的元素却能够超出你的设置:因为元素的边框和内边距会撑开元素. .div{ width: 500px; margin: 20px auto; padding: 50px; ...
- JQuery中阻止事件冒泡的两种方式及其区别
JQuery 提供了两种方式来阻止事件冒泡. 方式一:event.stopPropagation(); $("#div1").mousedown(function(event){ ...
- C#解析JSON数据
本篇文章主要介绍C#对Json数据的读取. 主要操作过程是: 发送Http请求获取Json数据 把获取的Json数据转换成C#中的类 下面我们以12306火车票余票的数据为例进行切入. 首先来看一下h ...
- python一句代码建立树
from collections import defaultdict def tree(): return defaultdict(tree) 上面的代码不难理解,就是利用递归的方式,创建了一个树的 ...
- python笔记之itertools模块
python笔记之itertools模块 itertools模块包含创建有效迭代器的函数,可以用各种方式对数据进行循环操作,此模块中的所有函数返回的迭代器都可以与for循环语句以及其他包含迭代器(如生 ...
- HDU 3501 Calculation 2(欧拉函数)
Calculation 2 Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Submi ...
- web技术之图片预加载
http://www.cnblogs.com/rt0d/archive/2011/04/17/2018646.html http://www.oschina.net/code/snippet_5437 ...
- BZOJ 1101 Zap(莫比乌斯反演)
http://www.lydsy.com/JudgeOnline/problem.php?id=1101 给定a,b,d,求有多少gcd(x,y)==d(1<=x<=a&& ...
- 简单的QT绘图程序(把全部的点都记录下来,然后在paintEvent里使用drawLine函数进行绘制,貌似效率很低。。。)
当初在学MFC时,最经典的入门实例就是绘图程序,其作用相当于Console Application 下的Hello World了吧. 如今入手QT,不免怀旧,于是也写了一个绘图程序,虽然简单,却也是入 ...