python学习记录(四)
0828--https://www.cnblogs.com/fnng/archive/2013/04/18/3029807.html
0828--https://www.cnblogs.com/fnng/archive/2013/04/20/3032563.html
列表
List函数可以将一个字符串拆分成列表。
>>> list('chongshi')
['c', 'h', 'o', 'n', 'g', 's', 'h', 'i']
改变列表:元素赋值
例如,我们想对一个列表中的某个元素赋值。
>>> x =[1,2,3,4]
>>> x[2]=18
>>> x
[1, 2, 18, 4]
删除元素
从列表中删除元素也很容易,使用dele语句来实现。
>>> names = ['zhangsan','lisi','wangwu','sunliu']
>>> del names[2]
>>> names
['zhangsan', 'lisi', 'sunliu']
分片赋值:

>>> name = list('huzi')
>>> name
['h', 'u', 'z', 'i']
>>> name[2:]=list('dazhi')
>>> name
['h', 'u', 'd', 'a', 'z', 'h', 'i']

name的内容为“huzi” ,从第3个字符(2)开始替换,用“da”替换“zi”并被扩容“zhi”,所以新的name的内容为“hudazhi”。
列表方法
方法是一个与某些对象有紧密联系的函数,对象可能是列表、数字,也可能是字符串或者其他类型的对象,一般来说,方法可以这样进行调用:
对象.方法(参数)
方法调用与函数调用很类似。
1、append
append方法用于在列表末尾追加新的对象:
>>> abc = [1,2,3]
>>> abc.append(4)
>>> abc
[1, 2, 3, 4]
2、count
count方法统计某个元素在列表中出现的次数:

>>> ['to','be','or','not','to','be',].count('to')
2
>>> x = [[1,2],1,1,[2,1,[1,2]]]
>>> x.count(1)
2
>>> x.count([1,2])
1

3、extend
extend方法可以在列表的末尾一次性追加另一个序列中的多个值。用新列表扩展原有列表:
>>> a = [1,2,3]
>>> b = [4,5,6]
>>> a.extend(b)
>>> a
[1, 2, 3, 4, 5, 6]
4、index
index 方法用于从列表中找出某个值第一个匹配项的。
>>> knights = ['We','are','the','kninghts','who','say','ni']
>>> knights.index('who')
4
>>> knights[4]
'who'
5、insert
insert 方法用于将对象插入到列表中:
>>> numbers = [1,2,3,5,6,7]
>>> numbers.insert(3,'four')
>>> numbers
[1, 2, 3, 'four', 5, 6, 7]
6、pop
pop 方法会移除列表中一个元素(默认是最后一个),并且返回该元素的值:

>>> x = [1,2,3]
>>> x.pop()
3
>>> x
[1, 2]
>>> x.pop(0)
1
>>> x
[2]

7、remove
remove 方法用于移除列表中某个值的第一个匹配项:
>>> x = ['to','be','or','not','to','be']
>>> x.remove('be')
>>> x
['to', 'or', 'not', 'to', 'be']
8、reverse
revers方法将列表中的元素反向存放
>>> x = [1,2,3]
>>> x.reverse()
>>> x
[3, 2, 1]
9、sort
sort方法用于在原位置对列表进行排序。在“原位置排序”改变原来的列表,从而让其中的元素能按一定的顺序排列。
>>> x = [4,6,2,1,7,9]
>>> x.sort()
>>> x
[1, 2, 4, 6, 7, 9]
元组:不可变序列
元组与列表一样,也是一种序列。唯一的不同是元组不能改变。创建元组的语法很简单:如果你用逗号分割了一些值,那么你就自动创建了元组。

>>> 1,2,3
(1, 2, 3)
>>> (1,2,3) # 用括号表示元组
(1, 2, 3)
>>> () # 空元组
()

如何实现包含一个值的元组呢?方法有点奇特----必须加逗号,即使只有一个值:

>>> 42,
(42,)
>>> (42,)
(42,)
>>> 3 * (20+1)
63
>>> 3 * (20+1,)
(21, 21, 21)

tuple 函数
tuple函数的功能与list函数基本上一样:以一个序列作为参数并把它转换为元组。

>>> tuple([1,2,3])
(1, 2, 3)
>>> tuple('abc')
('a', 'b', 'c')
>>> tuple((1,2,3))
(1, 2, 3)

字符串基本操作
序列的操作索引、分片、乘法、判断成员资格、求长度、取最小值和最大值对字符串同样适用。
注意:字符串都是不可变的。
实用的字符串方法
find
find()方法可以在一个较长的字符串中查找子字符串。它返回子串所在位置的最左端索引。如果没有找到则返回-1。
>>> 'this is a test demo'.find('is')
2
>>> title = "it's a test demo"
>>> title.find('it')
0
>>> title.find('iis')
-1
join(重要)
join用于在队列中添加元素,它是split方法的逆方法。
>>> seq = ['1','2','3','4','5']
>>> sep = '+'
>>> sep.join(seq)
'1+2+3+4+5'
>>> dirs = '','usr','bin','env'
>>> '/'.join(dirs)
'/usr/bin/env'
>>> print 'C:' + '\\'.join(dirs)
C:\usr\bin\env
lower
lower方法返回字符串的小写字母版。
若想要编写“不区分大小写”的代码,使用该方法,代码就会忽略大小写状态
>>> 'Hello,world!'.lower()
'hello,world'
>>> a = 'To Be Or Not To Be'
>>> a.lower()
'to be or not to be'
replace
repleace方法返回某字符串的所有匹配项均被替换之后得到字符串
>>> 'This is a test'.replace('is','eez')
'Theez eez a test'
split(重要)
用于将字符串分割成序列,它是join的逆方法。
>>> '1+2+3+4+5'.split('+')
['1', '2', '3', '4', '5']
>>> '/usr/bin/env'.split('/')
['', 'usr', 'bin', 'env']
>>> 'using the default'.split()
['using', 'the', 'default']
strip
strip方法返回去除两侧(不包含内部)空格的字符串
>>> ' this is a demo '.strip()
'this is a demo'

python学习记录(四)的更多相关文章
- Python学习记录day5
		title: Python学习记录day5 tags: python author: Chinge Yang date: 2016-11-26 --- 1.多层装饰器 多层装饰器的原理是,装饰器装饰函 ... 
- python学习第四次笔记
		python学习第四次记录 列表list 列表可以存储不同数据类型,而且可以存储大量数据,python的限制是 536870912 个元素,64位python的限制是 1152921504606846 ... 
- Python学习记录day6
		title: Python学习记录day6 tags: python author: Chinge Yang date: 2016-12-03 --- Python学习记录day6 @(学习)[pyt ... 
- python学习第四讲,python基础语法之判断语句,循环语句
		目录 python学习第四讲,python基础语法之判断语句,选择语句,循环语句 一丶判断语句 if 1.if 语法 2. if else 语法 3. if 进阶 if elif else 二丶运算符 ... 
- leveldb 学习记录(四)Log文件
		前文记录 leveldb 学习记录(一) skiplistleveldb 学习记录(二) Sliceleveldb 学习记录(三) MemTable 与 Immutable Memtablelevel ... 
- Python学习记录day8
		目录 Python学习记录day8 1. 静态方法 2. 类方法 3. 属性方法 4. 类的特殊成员方法 4.1 __doc__表示类的描述信息 4.2 __module__ 和 __class__ ... 
- Python学习记录day7
		目录 Python学习记录day7 1. 面向过程 VS 面向对象 编程范式 2. 面向对象特性 3. 类的定义.构造函数和公有属性 4. 类的析构函数 5. 类的继承 6. 经典类vs新式类 7. ... 
- Python学习(四)数据结构(概要)
		Python 数据结构 本章介绍 Python 主要的 built-type(内建数据类型),包括如下: Numeric types int float Text Sequence ... 
- JavaScript学习记录四
		title: JavaScript学习记录四 toc: true date: 2018-09-16 20:31:22 --<JavaScript高级程序设计(第2版)>学习笔记 要多查阅M ... 
- Python学习记录:括号配对检测问题
		Python学习记录:括号配对检测问题 一.问题描述 在练习Python程序题的时候,我遇到了括号配对检测问题. 问题描述:提示用户输入一行字符串,其中可能包括小括号 (),请检查小括号是否配对正确, ... 
随机推荐
- java实现单向循环链表
			链表图解 带头结点的链表: 不带头结点的链表: 区别 带头结点的链表容易代码实现 不带头结点的容易实现循环链表和双向链表 代码的实现 (增减 删除) 节点实现: public class node { ... 
- 看完这篇HTTP,跟面试官扯皮就没问题了
			我是一名程序员,我的主要编程语言是 Java,我更是一名 Web 开发人员,所以我必须要了解 HTTP,所以本篇文章就来带你从 HTTP 入门到进阶,看完让你有一种恍然大悟.醍醐灌顶的感觉. 最初在有 ... 
- The command '/bin/sh -c unzip -o php-7.2.23-src.zip' returned a non-zero code: 1
			Dockerfile 内容 #centos7 nginx php redis inotify FROM centos:7 MAINTAINER INFOBIRD RUN yum -y update & ... 
- mac-air上安装 rabbitmq 并简单使用
			简介: brew 安装 rabbitmq,docker安装rabbitmq 安装官方php-amqp 扩展 简单使用样例(发送10次helloworld 
- Java框架之SpringMVC 03-RequestMapping-请求数据-响应数据
			SpringMVC SpringMVC是一种轻量级的.基于MVC的Web层应用框架. 通过一套 MVC 注解,让 POJO 成为处理请求的控制器,而无须实现任何接口. 采用了松散耦合可插拔组件结构,比 ... 
- get_字段_display()
			gender_choices = ((1, '男'), (2, '女')) gender = models.IntegerField(verbose_name='性别', choices=gender ... 
- java.lang.IllegalArgumentException: clusterListener can not be null
			Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.mongodb. ... 
- [组合数学][多项式][拉格朗日插值]count
			源自 ditoly 大爷的 FJ 省队集训课件 Statement 有 \(m\) 个正整数变量,求有多少种取值方案 使得所有变量的和不超过 \(S\) 并且前 \(n\) 个变量的值都不超过 \(t ... 
- SpringMvc简单使用
			SpringMvc框架的简单使用 第一步:导入依赖 <dependencies> <dependency> <groupId>org.springframework ... 
- 2、pycharm安装及相关配置
			PyCharm是一种Python IDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试. 语法高亮.Project管理.代码跳转.智能提示.自动完成.单元测试.版本控制 ... 
