python学习记录

Posted liu_lu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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 asyncio+aiohttp出现Exception ignored:RuntimeError('Event loop is closed')(代码片段

学习笔记:python3,代码片段(2017)

常用python日期日志获取内容循环的代码片段

ElasticSearch学习问题记录——Invalid shift value in prefixCoded bytes (is encoded value really an INT?)(代码片段

python使用上下文对代码片段进行计时,非装饰器

Python学习总结