数据类型
不可修改:字符串、数值、元祖、布尔、空值None
可修改:列表、集合、字典
数据的增删改查
append、del、update()、discard()
Python如何处理内存管理
Python 使用私有堆来维护它的内存,所以堆包含所有的 Python 对象和数据结构。这个区域只有 Python 解释器可以访问; 程序员不能使用它。
处理私有堆的是 Python 内存管理器,它为 Python 对象分配所需的内存。
Python 使用内置的垃圾收集器,它回收所有未使用的内存并将其卸载到堆空间。
条件判断
if 边界条件1:
缩进 要做的事1
elif 边界条件2:
缩进 要做的事2
else:
缩进 要做的事3
循环: for i in 容器:
缩进 要做的事
continue
跳出当前循环 break退出整个循环
lambda 和 def 之间的主要区别是什么
def 可以保存多个表达式,而 lambda 是一个单表达式函数。
def 生成一个函数并指定一个名称以便稍后调用它。 Lambda 形成一个函数对象并返回它。
def 可以有一个 return 语句。 Lambda 不能有 return 语句。
lambda 支持在列表和字典中使用。
函数
(函数参数是不可变数据类型,传递的只是该数据类型的值,参数是可变数据类型时,传递的是该参数的引用地址)
def 函数名称(参数1,参数2):
缩进 函数体
缩进 return
变量(全局变量和局部变量)
数据结构
集合collections
1、双向链表queue:队列(从队尾入列,从队首出列),栈 (木桶,栈顶加入元素,撤回按钮相当于出栈),有序字典(根据key值排序)
2、计数器Counter (统计元素及出现次数)
使用 python reg 表达式模块re
编写一个确认电子邮件 ID 的 reg 表达式
Python 有一个正则表达式模块re
。查看可以检查 .com
和 .co.in
子域的电子邮件 ID 的re
表达式。
import re
print(re.search(r"[0-9a-zA-Z.]+@[a-zA-Z]+\.(com|co\.in)$","yiibai.com@qq.com"))
if python
a = 1
b = 2
c = a if a > b else b
with
with open(‘/path/to/file’, ‘r’) as f:
print f.read()
map
大多数的for循环可以用map来代替,用法是:map(func,seq),对seq中的每个元素进行操作,具体什么操作在func里定义
reduce
用法:reduce(func,seq),对seq中的每个元素进行func操作,最后汇总返回一个值。
求array = [1, 2, 3]所有元素的和:
print reduce(lambda x, y: x + y, array)