067、修饰符
修饰符 函数是一种对象 在 Python 中,函数是也是一种对象。 def foo(x): print x print(type(foo)) 查看函数拥有的方法: dir(foo) ['__call__', '__class__', '__closure__', '__code__', '__defaults__', '__delattr__', '__dict__', '__doc__', '_…
2024-3-07 20:56
|
|
7
561 字
|
15 分钟
066、with 语句和上下文管理器
with 语句和上下文管理器 # create/aquire some resource ... try: # do something with the resource ... finally: # destroy/release the resource ... 处理文件,线程,数据库,网络编程等等资源的时候,我们经常需要使用上面这样的代码形式,以确保资源的正常使用和释放。 好在Python…
2024-3-07 20:56
|
|
7
1031 字
|
26 分钟
065、生成器
生成器 while 循环通常有这样的形式: <do setup> result = [] while True: <generate value> result.append(value) if <done>: break 使用迭代器实现这样的循环: class GenericIterator(object): def __init__(self, ...): …
2024-3-07 20:55
|
|
7
363 字
|
14 分钟
064、迭代器
迭代器 简介 迭代器对象可以在 for 循环中使用: x = [2, 4, 6] for n in x: print n 2 4 6 其好处是不需要对下标进行迭代,但是有些情况下,我们既希望获得下标,也希望获得对应的值,那么可以将迭代器传给 enumerate 函数,这样每次迭代都会返回一组 (index, value) 组成的元组: x = [2, 4, 6] for i, n in enume…
2024-3-07 20:55
|
|
8
519 字
|
17 分钟
063、函数进阶:参数传递,高阶函数,lambda 匿名函数,global 变量,递归
函数进阶:参数传递,高阶函数,lambda 匿名函数,global 变量,递归 函数是基本类型 在 Python 中,函数是一种基本类型的对象,这意味着 可以将函数作为参数传给另一个函数 将函数作为字典的值储存 将函数作为另一个函数的返回值 def square(x): """Square of x.""" return x*x def …
2024-3-07 20:55
|
|
6
1082 字
|
23 分钟
062、对象关系映射
对象关系映射 数据库中的记录可以与一个 Python 对象对应。 例如对于上一节中的数据库: Order Date Stock Quantity Price A0001 2013-12-01 AAPL 1000 203.4 A0002 2013-12-01 MSFT 1500 167.5 A0003 2013-12-02 GOOG 1500 167.5 可以用一个类来描述: Attr. Metho…
2024-3-07 20:55
|
|
5
225 字
|
5 分钟
061、SQL 数据库
SQL 数据库 Python 提供了一系列标准的数据库的 API,这里我们介绍 sqlite 数据库的用法,其他的数据库的用法大同小异: import sqlite3 as db 首先我们要建立或者连接到一个数据库上: connection = db.connect("my_database.sqlite") 不同的数据库有着不同的连接方法,例如 cx-oracle 数据库的链…
2024-3-07 20:54
|
|
7
339 字
|
6 分钟
060、datetime 模块
datetime 模块 import datetime as dt datetime 提供了基础时间和日期的处理。 date 对象 可以使用 date(year, month, day) 产生一个 date 对象: d1 = dt.date(2007, 9, 25) d2 = dt.date(2008, 9, 25) 可以格式化 date 对象的输出: print d1 print d1.strf…
2024-3-07 20:54
|
|
10
364 字
|
5 分钟
059、正则表达式和 re 模块
正则表达式和 re 模块 正则表达式 正则表达式是用来匹配字符串或者子串的一种模式,匹配的字符串可以很具体,也可以很一般化。 Python 标准库提供了 re 模块。 import re re.match & re.search 在 re 模块中, re.match 和 re.search 是常用的两个方法: re.match(pattern, string[, flags]) re.se…
2024-3-07 20:54
|
|
3
913 字
|
9 分钟
058、CSV 文件和 csv 模块
CSV 文件和 csv 模块 标准库中有自带的 csv (逗号分隔值) 模块处理 csv 格式的文件: import csv 读 csv 文件 假设我们有这样的一个文件: %%file data.csv "alpha 1", 100, -1.443 "beat 3", 12, -0.0934 "gamma 3a", 192, -0.662…
2024-3-07 20:53
|
|
7
362 字
|
9 分钟