非常教程

Python参考手册

网络数据 | Internet Data

mailcap

源代码: Lib / mailcap.py

Mailcap文件用于配置感知MIME的应用程序(如邮件阅读器和Web浏览器)如何对具有不同MIME类型的文件作出反应。(名称“mailcap”源自短语“邮件功能”)。例如,一个mailcap文件可能包含一行video/mpeg; xmpeg %s。然后,如果用户遇到具有MIME类型video / mpeg的电子邮件消息或Web文档,%s将被替换为文件名(通常属于临时文件),并且xmpeg程序可以自动启动以查看该文件。

Mailcap格式在RFC 1524 “多媒体邮件格式信息的用户代理配置机制”中有记载,但不是Internet标准。但是,大多数Unix系统都支持mailcap文件。

mailcap.findmatch(caps, MIMEtype[, key[, filename[, plist]]])

返回一个2元组; 第一个元素是包含要执行的命令行的字符串(可以传递给它os.system()),第二个元素是给定MIME类型的mailcap条目。如果找不到匹配的MIME类型,(None, None)则返回。

是所需字段的名称,它表示要执行的活动的类型; 默认值是'view',因为在最常见的情况下,您只需查看MIME类型数据的主体。如果您想要创建给定MIME类型的新体或者更改现有正文数据,其他可能的值可能是“撰写”和“编辑”。有关这些字段的完整列表,请参阅RFC 1524

filename是要%s在命令行中替换的文件名; 默认值'/dev/null'几乎肯定不是你想要的,所以通常你会通过指定文件名覆盖它。

plist可以是包含命名参数的列表; 默认值只是一个空列表。列表中的每个条目都必须是一个包含参数名称,等号('=')和参数值的字符串。Mailcap条目可以包含名称参数,例如%{foo},它将被名为'foo'的参数的值替换。例如,如果命令行在showpartial %{id} %{number} %{total}mailcap文件中,并且plist设置为['id=1', 'number=2', 'total=3'],则生成的命令行将为'showpartial 1 2 3'

在mailcap文件中,可以选择指定“test”字段来测试某些外部条件(例如机器体系结构或所用的窗口系统)以确定是否应用该mailcap行。findmatch()将自动检查这些条件并在检查失败时跳过条目。

mailcap.getcaps()

将MIME类型的字典映射到mailcap文件条目列表。该字典必须传递给该findmatch()函数。一个条目被存储为一个词典列表,但不需要知道这个表示的细节。

信息来源于系统中找到的所有mailcap文件。在用户的mailcap文件的设置$HOME/.mailcap将覆盖在系统mailcap文件中的设置/etc/mailcap/usr/etc/mailcap/usr/local/etc/mailcap

一个示例用法:

>>> import mailcap
>>> d = mailcap.getcaps()
>>> mailcap.findmatch(d, 'video/mpeg', filename='tmp1223')
('xmpeg tmp1223', {'view': 'xmpeg %s'})
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()方法