python重难点(个人学习2)

一, python字典操作方法及知识点

    fromkeys(*args,**kwargs) :创建一个薪资点,以序列seq中的原色做字典的键,val为字典所有对应键值初始化。

    get(self,k,d=none)若无对应值,可以设置默认返回值

    popitem(self) 随机删除一组键和值

    setdefault(self, k, d=default) 和get类似,但如果键不存在,将会添加键并将值设为default   

    字典的键不能为list

     list,set,dict 不能被哈希, int,float,str,tuple 可以被哈希

     直接声明的dict可以通过tuple()和list()分别转换成tuple和list类型(结果只包含了keys),可是此时却能通过dict()反转回原来的dict类型

二,列表

    extend(self,iterable)在列表末尾一次性追加另一个序列的值

    reverse(self, value) 反向列表中的元素。

    remove()删除找到的第一个元素。

    for index,i enumerate(list,10):

        print(index, i)

序列默认从零开始,第二个参数设置序列开始位。

三,字符串

split()函数有个小陷阱,比如对于字符串s,s.split()和s.split(" ")的返回值不同。看下面代码

1

2

3

= "  hello world"#前面有两个空格

print s.split()

print s.split(' ')

输出结果如下

1

2

['hello', 'world']

['', '', 'hello', 'world']

尽量使用join()链接字符串,因为’+’号连接n个字符串需要申请n-1次内存,使用join()需要申请1次内存。 

将print的字符串写到文件

1

2

>>> print >> open("somefile.txt", "w+"), "Hello World"  

# Hello World将写入文件somefile.txt

固定长度分割字符串:findall内可用正则表达式

1

2

3

4

>>> import re

>>> s = '1234567890'

>>> re.findall(r'.{1,3}', s)  # 已三个长度分割字符串

['123''456''789''0']

猜你喜欢

转载自blog.csdn.net/mrliu42/article/details/84258392
今日推荐