python概览

Python编程入门
[b]2.1 概览[/b]
先看下第一个Python程序.
文件名: odbchelper.py

def buildConnectionString(params):
"""Build a connection string from a dictionary of
parameters. Returns string. """

return ";".join(["%s=%s" % (k, v) for k, v in params.items()])

if __name__ == "__main__":
myParams = {"server":"mpilgrim", \
"database":"master" }
print buildConnectionString(myParams)

先打开第一章安装的ActivePython.
选File - New
选 Python Script
把上边的代码复制在编辑器中. 保存为odbchelper.py
再选 File - Run
可以看到运行结果.


[b]2.2 函数声明[/b]
例如上边例子中的:
def buildConnectionString(params):
其中:
def 是关键字. 函数声明以它开始.
接着是函数名.
再接着的()中是参数表. 多个参数用逗号分割.

它不需要声明返回类型. 实际上. 每个Python函数都返回一个值:
若函数执行过return语句. 则返回指定的值. 否则返回None(Python的空值).

并且在函数的参数表中. 不需要指定参数类型. 在调用的时候. 会自动将类型记录下来.


[b]2.3 文档化函数[/b]
在前边例子中. 函数定义中的第一个东西是以"""开头和结尾的字符串.
"""Build a connection string from a dictionary of
parameters. Returns string. """
这种用三个引号扩起来的字符串. 表示它是一个多行字符串. 它们之间(包括回车符)的东西都作为字符串的内容.

这种字符串可以用在任何地方. 但它们现在用在这里是作为函数的文档(即注释).
函数的文档(如果存在) 必须是函数定义时的第一个内容(冒号后的第一个内容).

而且在Python中. 函数的文档可以在运行时作为函数的属性.


[b]2.4 万物皆对象[/b]
上一讲最后提到. 函数的文档可以在运行时作为函数的属性.
在Python中. 一切东西都是对象. 都有属性和方法. 函数也是对象.
这一讲具体看一个例子来学习一下.
例如. 在使用的IDE的 Interactive Window(交互窗口) 中:
>>> import odbchelper
>>> print odbchelper.buildConnectionString.__doc__
就可以打印出该函数的文档.

其中:
import 是导入一个程序模块. 模块指的是: 可以交互使用的一个代码段.
导入一个模块后. 就可以引用它的公共函数. 类. 或属性.
所以可以在一个模块中通过 import 来使用其它模块. 也可以在IDE中这样做.
使用导入的模块中的函数. 要通过模块的名字来访问. 正如例子中那样.
这里我们访问的是该函数的__doc__属性. 它是每个函数对象都有的内置属性.

模块导入的搜索路径
说到了模块的导入. 就要说说库的搜索路径.
在导入一个模块时. Python会在 sys.path 中指定的目录进行搜索.
而 sys.path 是一个list对象. 可以通过 list 的方法来查看或修改它.
这样我们通过修改 sys.path 就可以追加搜索路径.


[b]2.5 代码缩进[/b]
Python 不使用 {} 来作为函数的开始和结束. 而是用代码块的缩进.
象函数. if语句. for. while等. 都是用代码块的缩进来表示块的开始和结束.
例如:
def fib(n):
print 'n =', n
if n > 1:
return n * fib(n - 1)
else:
print 'end of the line'
return 1
这个例子可以看出 Python的风格:
用硬回车来分割语句. 用冒号和缩进来分割代码块.
如果语句太长. 可以用续行符 \ 来续行. 续行时代码可以随便缩进.
实际上. 在{} [] () 中的表达式也可以不用续行符 \ 而直接写为多行.
不过. 缩进的字符数没有限制.

例子中的 print语句 用来向屏幕输出. 它可以接受任何数据类型. 如字符串. 整数. list等.
而且可以用一个print语句输出多个内容. 只要把它们用逗号隔开就行了.


[b]2.6 测试模块[/b]
首先. 和函数一样. Python的模块也是对象. 模块对象都有一个内置属性__name__
这个__name__属性的值. 根据如何使用该模块而定.
当 import一个模块时. __name__的值是该模块的文件名.
当 直接运行一个模块时. __name__的值是一个特别的值: __main__

所以为了测试一个模块. 可以在该模块的内部设计一个测试套件.
即加入一个类似下边的if语句:
if __name__ == "__main__":
myParams = {"server":"mpilgrim", \
"database":"master" }
print buildConnectionString(myParams)
这样. 当直接运行该模块时执行指定的代码. 而在该模块被其它模块 import 时却忽略.
潮汐研究作为海洋科学的关键分支,融合了物理海洋学、地理信息系统及水利工程等多领域知识。TMD2.05.zip是一套基于MATLAB环境开发的潮汐专用分析工具集,为科研人员与工程实践者提供系统化的潮汐建模与计算支持。该工具箱通过模块化设计实现了两大核心功能: 在交互界面设计方面,工具箱构建了图形化操作环境,有效降低了非专业用户的操作门槛。通过预设参数输入模块(涵盖地理坐标、时间序列、测站数据等),用户可自主配置模型运行条件。界面集成数据加载、参数调整、可视化呈现及流程控制等标准化组件,将复杂的数值运算过程转化为可交互的操作流程。 在潮汐预测模块中,工具箱整合了谐波分解法与潮流要素解析法等数学模型。这些算法能够解构潮汐观测数据,识别关键影响要素(包括K1、O1、M2等核心分潮),并生成不同时间尺度的潮汐预报。基于这些模型,研究者可精准推算特定海域的潮位变化周期与振幅特征,为海洋工程建设、港湾规划设计及海洋生态研究提供定量依据。 该工具集在实践中的应用方向包括: - **潮汐动力解析**:通过多站点观测数据比对,揭示区域主导潮汐成分的时空分布规律 - **数值模型构建**:基于历史观测序列建立潮汐动力学模型,实现潮汐现象的数字化重构与预测 - **工程影响量化**:在海岸开发项目中评估人工构筑物对自然潮汐节律的扰动效应 - **极端事件模拟**:建立风暴潮与天文潮耦合模型,提升海洋灾害预警的时空精度 工具箱以"TMD"为主程序包,内含完整的函数库与示例脚本。用户部署后可通过MATLAB平台调用相关模块,参照技术文档完成全流程操作。这套工具集将专业计算能力与人性化操作界面有机结合,形成了从数据输入到成果输出的完整研究链条,显著提升了潮汐研究的工程适用性与科研效率。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值