python 总结_python总结

Python基础教程 学习总结

1. 导入模块

“模块.函数”(优先使用)

importmath

math.sqrt(9)

在确定不会导入多个同名函数时,可以使用 “from 模块 import 函数” 方式

from math importsqrt

sqrt(9)

还可以使用变量来引用函数

foo=math.sqrt

foo(9)

2. 字符串表示 str repr

str() 输出对用户比较友好

>>> print str(10000L)10000

repr() 输出对python解释器比较友好,该函数得到的字符串通常可以用来重新获得该对象,即 obj == eval(repr(obj))

>>> print repr(10000L)10000L

3. 列表可以修改,元组不能修改。一般来说,在几乎所有情况下列表都可以替代元组(例外情况是使用元组作为字典的键,因为键不能修改)。

4. 列表 extend()与连接操作

extend() 修改了被扩展的序列。

>>> a=[1,2,3]>>> b=[4,5,6]>>>a.extend(b)>>>a

[1,2,3,4,5,6]

连接+操作则返回一个全新的列表,不修改原列表。

>>> a=[1,2,3]>>> b=[4,5,6]>>> a+b>>> [1,2,3,4,5,6]>>>a

[1,2,3]

5. 列表排序 sort() 和 sorted()

sort() 用于在原位置对列表进行排序。

>>> x=[4,6,5]>>>x.sort()>>>x

[4,5,6]

>>> y=x.sort()

>>> print y

None

sorted() 不是原地操作

>>> x=[4,6,5]>>> y=sorted(x)>>>x

[4,6,5]>>>y

[4,5,6]

6. 元组表示

一个元组的值必须加个逗号

>>> 42

42

>>> (42)42

>>> 42,

(42,)

7. 格式化字符串,使用%实现

>>> "%s plus %s equals %s" % (1,2,3)5

>>> phone = {'Tom':'9980'}

>>> 'his number is %(Tom)' % phone

8. 字符串常用方法

find(), 查找子串

split(), 切割字符串

join(), 是split()的逆方法

>>> '+'.join(['1','2','3'])1+2+3

replace(), 替换所有匹配的字符串

translate(), 与replace()类似,只是translate()只处理单个字符,并可以同时进行多个替换。

>>> from string importmaketrans>>> table = maketrans('ts','kz')>>> 'this is a test'.translate(table)'khiz iz a kezk'

strip(), 去除两侧指定的字符(默认为空格)

9. 字典方法

clear(), 清空字典, 原地操作

copy(), 浅复制 ; deepcopy(), 深复制

get(), 访问一个不存在的键时不会报异常,返回None

>>> d={}>>> print d['name']

Traceback (most recent call last):

File"", line1, in?

KeyError:'name'

>>> print d.get('name')

>>> None

items(), 返回键值对的列表形式; iteritems(), 返回键值对的迭代器对象, 使用更高效

keys(), 返回键的列表形式; iterkeys(), 返回键的迭代器对象

10. 序列解包 (将多个值的序列解开,放到变量的序列中)

多个赋值同时进行以及交换

>>> x,y,z = 1,2,3

>>> printx,y,z1,2,3

>>> x,y =y,x

>>> print x,y,z

2,1,3

>>> value = 1,2,3

>>> value

(1,2,3)

>>> x,y,z = value

>>> x

1

>>> a,b,*rest = [1,2,3,4]

>>> rest

[3,4]

11. x==y 相等性(值相等); x is y 同一性(同一个对象)

0

三元运算符 :a if b else c (不用引入临时变量)

12. 迭代工具

zip 并行迭代

zip可以应付不等长的序列,当最短的序列用完后就会停止

>>> name = ['a','b','c']>>> age = [2,3]>>>zip(name , age)

[('a',2),('b',3)]

enumerate(), 迭代序列中的对象同时获取当前对象的索引

for index,string inenumerate(strings):if 'xxx' instring:

strings[index]= 'find'

reversed() 非原地翻转 ; reverse() 原地翻转

13. 循环相关

while True/break 习语

循环中的else子句

当循环内使用break时,通常是因为找到了某物或某事发生了,但有时候想要在没有跳出前做些事情。

故在循环中没有调用到break时会执行else子句。

for n in range(100):

...ifxxx:

...break

else: #与for循环对齐

...

14. 列表推倒式

>>> [x*x for x in range(10) if x %3 ==0]

[0,9,36,81]>>> [(x,y) for x in range(1) for y in range(2)] #最外层使用圆括号不会得到"元组推导式"

[(0,0),(0,1)]

15. 使用del删除

>>> x=[2]>>> y =x>>> delx>>>y

[2]

删除x后,y并不会被删除。del删除的只是名称,而不是列表本身。python中是没有办法删除值的,也不需要考虑。当某个值不再使用时,Python解释器会负责内存的回收。

16. exec(),动态执行一个字符串的语句

>>> exec "print 'hello,world'"

hello,world

eval(),计算以字符串形式书写的python表达式

>>> eval("8+9")17

17. 命令空间(todo)

18.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值