第八章 标准库二

第二部分涵盖了很多更能满足专业开发者需求的高级模块。这些模块在小脚本中非常少出现。

8.1 输出格式化

Reprlib模块为大型的或深度嵌套的容器缩写显示提供了repr()函数的一个定制版本号。

>>> import reprlib

>>> reprlib.repr(set(’supercalifragilisticexpialidocious’))

"set([’a’, ’c’, ’d’, ’e’, ’f’, ’g’, ...])"

Pprint模块提供了对输出内置函数和用户定义对象更加复杂的控制。这样的方式是解释器可以读懂的。

当结果多于一行时,“完美打印机”就会添加行中断和随进,一边更清晰的显示数据结构。

>>> import pprint

>>> t = [[[[’black’, ’cyan’], ’white’, [’green’, ’red’]], [[’magenta’,

... ’yellow’], ’blue’]]]

...

>>> pprint.pprint(t, width=30)

[[[[’black’, ’cyan’],

’white’,

[’green’, ’red’]],

[[’magenta’, ’yellow’],

’blue’]]]

Textwrap 模块格式化文本段落来适应所给屏幕的宽度。

>>> import textwrap

>>> doc = """The wrap() method is just like fill() except that it returns

... a list of strings instead of one big string with newlines to separate

... the wrapped lines."""

...

>>> print(textwrap.fill(doc, width=40))

The wrap() method is just like fill()

except that it returns a list of strings

instead of one big string with newlines

to separate the wrapped lines.

Local模块用来訪问特殊数据格式的文化数据库。Local的分组格式化函数属性为数字的分组分隔格式化提供了直接的方法。

>>> import locale

>>> locale.setlocale(locale.LC_ALL, ’English_United States.1252’)

’English_United States.1252’

>>> conv = locale.localeconv() # get a mapping of conventions

>>> x = 1234567.8

>>> locale.format("%d", x, grouping=True)

’1,234,567’

>>> locale.format_string("%s%.*f", (conv[’currency_symbol’],

... conv[’frac_digits’], x), grouping=True)

’$1,234,567.80’

Python3.2官方文档翻译--输出格式化的更多相关文章

  1. Python3.2官方文档翻译--标准库概览(一)

    7.1 操作系统接口 Os模块提供主要很多与操作系统交互的函数. >>> import os >>> os.getcwd() # Return the curren ...

  2. Python3.2官方文档翻译--继承

    6.5 继承 当然,一门语言特性假设不支持继承那么名称类就失去了价值.子类继承父类的方法例如以下: class DerivedClassName(BaseClassName): <stateme ...

  3. Python3.2官方文档翻译--作用域和命名空间

    6.2 Python作用域和命名空间 在介绍类之前.首先我想告诉你一些关于python作用域的规则. 类的定义很巧妙地运用了命名空间,你须要知道范围和命名空间的工作原理以能全面了解接下来发生的. 顺便 ...

  4. Python3.2官方文档翻译--实例对象和方法对象

    6.3.3 实例对象 如今我们用实例对象做什么呢?实例对象唯一可用的操作就是属性引用.如今有两种合法的属性名称:数据属性和方法. 数据属性相当于smallTalk中的实例变量,C++中的数据成员.数据 ...

  5. Python3.2官方文档翻译--迭代器

    6.9 迭代器 到眼下为止.你可能已注意到很多容器对象都能够用for语句进行循环: 这样的訪问风格清楚简洁方便. 迭代器的应用是python遍历统一.在这样的场景背后.for语句调用容器对象iter( ...

  6. Python3.2官方文档翻译--作用域和命名空间实例

    6.2.1 作用域和命名空间实例 以下的实例主要用来示范怎样引用不同的作用域和命名空间,keywordglobal和nonlocalru怎样影响变量绑定. 实例执行结果是: After local a ...

  7. Spring官方文档翻译(1~6章)

    Spring官方文档翻译(1~6章) 转载至 http://blog.csdn.net/tangtong1/article/details/51326887 Spring官方文档.参考中文文档 一.S ...

  8. Flume官方文档翻译——Flume 1.7.0 User Guide (unreleased version)(二)

    Flume官方文档翻译--Flume 1.7.0 User Guide (unreleased version)(一) Logging raw data(记录原始数据) Logging the raw ...

  9. Aircrack-ng官方文档翻译[中英对照]---Airmon-ng

    Aircrack-ng官方文档翻译---Airmon-ng Description[简介] This script can be used to enable monitor mode on wire ...

随机推荐

  1. MOSFET enhances voltage regulator's overcurrent protection

    The classic LM317 adjustable-output linear voltage regulator offers a relatively high, if package-de ...

  2. TortoiseSVN 冲突解决详细步骤 (图)

    冲突还是很好解决的,但我没有试过在IDE里边集成怎样.记得VSS在Visual Studio里边解决冲突就非常完美,冲突自动报告,自动弹出冲突解决窗口,让你处理该怎么合并两份版本.合并后自动签入com ...

  3. 【spring cloud】spring cloud 使用feign调用,1.fallback熔断器不起作用,2.启动报错Caused by: java.lang.ClassNotFoundException: com.netflix.hystrix.contrib.javanica.aop.aspectj.Hystri解决

    示例GitHub源码地址:https://github.com/AngelSXD/springcloud 1.首先使用feign调用,需要配置熔断器 2.配置熔断器需要将熔断器注入Bean,熔断器类上 ...

  4. 使用Struts2服务端与android交互

    转自:http://www.cnblogs.com/android-html5/archive/2011/09/25/2534107.html android--使用Struts2服务端与androi ...

  5. 开始学习深度学习和循环神经网络Some starting points for deep learning and RNNs

    Bengio, LeCun, Jordan, Hinton, Schmidhuber, Ng, de Freitas and OpenAI have done reddit AMA's.  These ...

  6. Python学习(二)Python 简介

    Python 简介 官方指南及文档 Python2.7官方指南(中文版):http://pan.baidu.com/s/1dDm18xr Python3.4官方指南(中文版):http://pan.b ...

  7. Flask 学习(一)概述及安装

    Flask 概述及安装 Flask 简介 Flask是一个使用 Python 编写的轻量级 Web 应用框架.其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 . 官方网址 ...

  8. 一次Dapper高并发测试报告记录. 结果....

    一直听说dapper的数据处理能力很强. 我也一直很喜欢. 不过最近的一次压力测试却出乎我的意料.... 好久没写东西,感觉自己都不知道怎么表达自己的意思了.   另外 这次的测试也是自己才开始的 . ...

  9. iOS:Xcode的beta下编译低版本项目时,出现的Link错误( "_fwrite$UNIX2003", referenced from:)

    开发的项目多了,对于一个i386的错误,处理起来应该是得心应手的,可是仔细看来,跟之前遇到i386的错误还不大一样,直接搜i386是搜不到该问题解决的方法,你要是搜“Undefined symbols ...

  10. 自定义控件 淘宝头条【ViewFlipper】

    简易版 代码 ); tv.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Acti ...