非常教程

Python参考手册

Mac OS

MacPython OSA Modules

本章介绍Python的开放脚本体系结构(OSA,通常也称为AppleScript)的当前实现,允许您从Python程序和相当pythonic接口控制脚本化应用程序。这套模块的开发已经停止。

有关AppleScript和OSA的各种组件的描述,并了解体系结构和术语,请阅读Apple的文档。“Applescript语言指南”解释了概念模型和术语,并记录了标准套件。“Open Scripting Architecture”文档解释了如何从应用程序员的角度使用OSA。在Apple帮助查看器中,这些书籍位于开发者文档核心技术部分。

作为脚本编写应用程序的示例,下面一段AppleScript将获取最前面的Finder窗口的名称并将其打印出来:

tell application "Finder"
    get name of window 1
end tell

在Python中,下面的代码片段会做同样的事情:

import Finder

f = Finder.Finder()
print f.get(f.window(1).name)

分布式Python库包括实现标准套件的包,以及与少数常见应用程序接口的包。

要将AppleEvents发送到应用程序,您必须首先创建与应用程序术语接口的Python包(脚本编辑器称为“字典”)。这可以在PythonIDE中完成,也可以通过从命令行运行gensuitemodule.py模块作为独立程序来完成。

生成的输出是一个包含多个模块的包,一个用于程序中使用的每个套件以及一个__init__将所有套件粘合在一起的模块。Python继承图遵循AppleScript继承图,所以如果程序的字典指定它包含对Standard Suite的支持,但用额外参数扩展一个或两个动词,则输出套件将包含一个模块Standard_Suite,该模块导入并重新导出StdSuites.Standard_Suite但是会覆盖具有额外功能的方法。输出gensuitemodule非常易读,并且包含Python文档中原始AppleScript词典中的文档,因此阅读它是文档的一个很好的来源。

输出包实现了一个名称与包含所有AppleScript动词作为方法的包相同的主类,其中直接对象作为第一个参数,所有可选参数作为关键字参数。AppleScript类也以Python类的形式实现,比较和所有其他东西。

实现动词的主要Python类还允许访问在AppleScript类“应用程序”中声明的属性和元素。在目前的版本中,就目标方向而言,因此在上面的示例中,我们需要使用f.get(f.window(1).name)而不是更多的Pythonic f.window(1).name.get()

如果AppleScript标识符不是Python标识符,则会根据少量规则对名称进行修改:

  • 空格替换为下划线
  • 其它非字母数字字符被替换为_xx_其中xx是十六进制字符值
  • 任何Python保留字都会附加下划线

Python也支持在Python中创建脚本化应用程序,但以下模块与MacPython AppleScript支持相关:

  • 38.1。gensuitemodule - 生成OSA存根包
  • 38.2。aetools - OSA客户端支持
  • 38.3。aepack - Python变量和AppleEvent数据容器之间的转换
  • 38.4。aetypes - AppleEvent对象
  • 38.5。MiniAEFrame - 开放脚本架构服务器支持
    • 38.5.1。AEServer对象

此外,支持模块已为预先生成FinderTerminalExplorerNetscapeCodeWarriorSystemEventsStdSuites

Python

Python 是一种面向对象的解释型计算机程序设计语言,由荷兰人 Guido van Rossum 于1989年发明,第一个公开发行版发行于1991年。 Python 是纯粹的自由软件, 源代码和解释器 CPython 遵循 GPL 协议。Python 语法简洁清晰,特色之一是强制用空白符( white space )作为语句缩进。

主页 https://www.python.org/
源码 https://github.com/python/cpython
版本 2.7
发布版本 2.7.13

Python目录

1.内置常量 | Built-in Constants
2.内置例外 | Built-in Exceptions
3.内置函数 | Built-in Functions
4.内置类型 | Built-in Types
5.编译器 | Compiler
6.加密 | Cryptography
7.数据压缩 | Data Compression
8.数据持久性 | Data Persistence
9.数据类型 | Data Types
10.调试和分析 | Debugging & Profiling
11.开发工具 | Development Tools
12.文件和目录访问 | File & Directory Access
13.文件格式 | File Formats
14.构架 | Frameworks
15.输入 | Importing
16.输入/输出 | Input/ouput
17.国际化 | Internationalization
18.网络 | Internet
19.网络数据 | Internet Data
20.翻译 | Interpreters
21.语言 | Language
22.记录 | Logging
23.Mac OS
24.MS Windows
25.多媒体 | Multimedia
26.联网 | Networking
27.数字与数学 | Numeric & Mathematical
28.操作系统 | Operating System
29.可选操作系统 | Optional Operating System
30.限制执行 | Restricted Execution
31.运行 | Runtime
32.SGI IRIX
33.软件包装与分销 | Software Packaging & Distribution
34.字符串 | String
35.结构化标记 | Structured Markup
36.Tk
37.Unix
38.Python 简介
39.Python pass 语句
40.Python 循环嵌套
41.Python 运算符
42.Python log10() 函数
43.Python log() 函数
44.Python floor() 函数
45.Python fabs() 函数
46.Python exp() 函数
47.Python cmp() 函数
48.Python ceil() 函数
49.Python abs() 函数
50.Python Number(数字)
51.Python pow() 函数
52.Python modf() 函数
53.Python min() 函数
54.Python max() 函数
55.Python asin() 函数
56.Python acos() 函数
57.Python uniform() 函数
58.Python shuffle() 函数
59.Python seed() 函数
60.Python random() 函数
61.Python randrange() 函数
62.Python choice() 函数
63.Python sqrt() 函数
64.Python round() 函数
65.Python radians() 函数
66.Python degrees() 函数
67.Python tan() 函数
68.Python sin() 函数
69.Python hypot() 函数
70.Python cos() 函数
71.Python atan2() 函数
72.Python atan() 函数
73.Python 元组
74.Python 列表(List)
75.Python 字符串
76.Python 字典(Dictionary)
77.Python 日期和时间
78.Python 函数
79.Python 模块
80.Python capitalize()方法
81.Python center()方法
82.Python count() 方法
83.Python expandtabs()方法
84.Python endswith()方法
85.Python encode()方法
86.Python decode()方法
87.Python find()方法
88.Python index()方法
89.Python 异常处理
90.Python isspace()方法
91.Python isnumeric()方法
92.Python islower()方法
93.Python isdigit()方法
94.Python isalpha()方法
95.Python isalnum()方法
96.Python isupper()方法
97.Python istitle()方法
98.Python min()方法
99.Python max()方法
100.Python maketrans()方法