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的更多相关文章

  1. LPTHW 结束了

    基本上在学习了LPTHW的 类 继承 和 合成以后基本就结束. 后面几章都是根据web.py进行网页编程,以及自动化测试的.目前来看不太感兴趣. 稍后我可能找个实际项目进行锻炼下,比如 Crossin ...

  2. LPTHW 笨办法学python 40章 类

    今天读了LPTHW的第40章以后豁然开朗,原来一直愚钝,不太理解类的定义和使用,还有就是不太理解关于self的定义. class MyStuff(object): def __init__(self) ...

  3. 重读 code complete 说说代码质量

    重读code complete 说说代码质量 2014年的第一篇文章本来计划写些过去一年的总结和新年展望,但是因为还有一些事情要过一阵才能完成,所以姑且不谈这个,说说最近重读code complete ...

  4. 不忘初心 --- 重读<<The C Programming Language>>

    这篇文章应该发布在好几年前,2011年计算机界大师Dennis Ritchie仙逝,那时对大师的映象还停留在大一刚学编程时:Unix的合作开发者,C语言的发明人.通过网上的纪念文章<<Un ...

  5. 重读COM技术内幕(inside com)有感

    重读COM技术内幕(inside com)有感 面向对象设计哲学在复杂领域并不能很好地解决问题.参考(http://www.richardlord.net/blog/what-is-an-entity ...

  6. 重读redis设计与实现

    重读了一遍redis设计与实现,这次收获也不错,把之前还有些疑惑的点:redis跳跃表的原理.redis持久化的方法.redis复制.redis sentinel.redis集群等,都重新熟悉了一遍, ...

  7. React.js 小书 Lesson25 - 实战分析:评论功能(四)

    作者:胡子大哈 原文链接:http://huziketang.com/books/react/lesson25 转载请注明出处,保留原文链接和作者信息. (本文未审核) 目前为止,第二阶段知识已经基本 ...

  8. (名词 形容词 动词 副词)重读&(冠词 介词 连词 代词 辅助词(Be))弱读

    二,一些发音规则 除了上面的练习之外,这里还有几个注意点需要我们有足够的认识,那就是英语有重读.弱读.连读.爆破.语感(节奏和断句)等(其实当你跟读并背诵新概念之后,这一切都是神马,你不知觉地也会发现 ...

  9. 重读《学习JavaScript数据结构与算法-第三版》-第2章 ECMAScript与TypeScript概述

    定场诗 八月中秋白露,路上行人凄凉: 小桥流水桂花香,日夜千思万想. 心中不得宁静,清早览罢文章, 十年寒苦在书房,方显才高志广. 前言 洛伊安妮·格罗纳女士所著的<学习JavaScript数据 ...

  10. 重读《学习JavaScript数据结构与算法-第三版》- 第4章 栈

    定场诗 金山竹影几千秋,云索高飞水自流: 万里长江飘玉带,一轮银月滚金球. 远自湖北三千里,近到江南十六州: 美景一时观不透,天缘有分画中游. 前言 本章是重读<学习JavaScript数据结构 ...

随机推荐

  1. kafka-manager安装

    代码地址: https://github.com/yahoo/kafka-manager 注意只能使用 Java 7!Java 6 编译不通过,Java 8 在运行的时候会报错:java.lang.U ...

  2. Spring HibernateTemplate的使用

    Spring HibernateTemplate的使用 2008-03-25 11:38 2020人阅读 评论(0) 收藏 举报 springbeanhibernatesessiondaoclass ...

  3. 折腾gnome3.4

    1.平埔式窗口管理器shellshape 刚开始用都是登录时默认为gnome classic,主要是希望有任务栏,但是为了在这种模式,gnome扩展都没有用了. 而我又在使用shellshape -- ...

  4. TF卡座(外焊、内焊、掀盖式、全塑、简易)

    TF卡座(外焊.内焊.掀盖 式.全塑.简易

  5. Dropbox 用什么语言开发的?(Python在各个平台都是全能的,特别是有PyObjC真没想到)

    Dropbox 绝大部分是用 Python 开发的.用到 Python 的地方有:服务器后台.客户端.Dropbox 网页版前段.API 后台.数据分析. 在服务器端.桌面版客户端使用的是 Pytho ...

  6. 有意思的GacUI

    所有方法,无论是你写还是工具来codegen还是用宏,最终都指向把这些名字和对应的指针存在一个map里.C++是不提供这个功能的,我也没仔细研究过qt怎么做,不过我在我自己的gacui里面实现了类似的 ...

  7. HttpApplication中的异步线程

    一.Asp.net中的线程池设置 在Asp.net的服务处理中,每当服务器收到一个请求,HttpRuntime将从HttpApplication池中获取一个HttpApplication对象处理此请求 ...

  8. 微信iOS WKWebview 网页开发适配指南

    微信iOS客户端将于2017年3月1日前逐步升级为WKWebview内核,需要网页开发者提前做好网站的兼容检查和适配. 背景 WKWebView 是苹果在iOS 8中引入的新组件,目的是提供一个现代的 ...

  9. Web Service中的XFire 传输List 自定义对象.

    我把这个创建的步骤和代码的贴出来,. 首先新建一个工程,取名就随便点啦..MyWebService,然后复制jar包到lib目录下, 创建包,建立接口..写一个javaBean的类, 以下是一个简单的 ...

  10. SSH框架-unexpected token: * near line 1, column 8 [select * from tb_chaper where course_id = 2];报错解决方法

    SSH项目,访问jsp页面出现报错,控制台显示报错信息: org.springframework.orm.hibernate3.HibernateQueryException: unexpected ...