3.6 字符串格式化

表 字符串格式化类型码

符号描述

%

字面量

i

整数

f

十进制浮点数,小写

F

十进制浮点数,大写

d

十进制数

o

八进制数

x

十六进制数

X

十六进制数

e

带有指数的浮点数,小写

E

带有指数的浮点数,大写

g

浮点数e或f

G

浮点数E或F

c

字符

s

字符串

r

与s相同,但使用repr,而不是str

3.6.1 格式化表达式

字符串格式化表达式语法如下:

‘…%s…’ %(values)

3.6.2 格式化方法调用

字符串格式化方法调用语法如下:

‘…{}…’.format(values)

3.6.3 格式化表达式与格式化方法调用对比

3.7 编程艺术

3.5.1 Python之禅

想要成为一位优秀的python开发人员,除了掌握扎实的编程技能外,还需要确保自己写出的代码是整洁优雅的。什么是整洁优雅的代码?Python语言的主要贡献者之一Tim Peters给出了他自己的见解,这就是《Python之禅》。

《Python之禅》以函数库的形式内置于Python描述器中。当我们在Python描述器中键入“import this“时,描述器会输出《Python之禅》全文。

代码

>>> import this

The Zen of Python, by Tim Peters

Beautiful is better than ugly.

Explicit is better than implicit.

Simple is better than complex.

Complex is better than complicated.

Flat is better than nested.

Sparse is better than dense.

Readability counts.

Special cases aren't special enough to break the rules.

Although practicality beats purity.

Errors should never pass silently.

Unless explicitly silenced.

In the face of ambiguity, refuse the temptation to guess.

There should be one-- and preferably only one --obvious way to do it.

Although that way may not be obvious at first unless you're Dutch.

Now is better than never.

Although never is often better than *right* now.

If the implementation is hard to explain, it's a bad idea.

If the implementation is easy to explain, it may be a good idea.

Namespaces are one honking great idea -- let's do more of those!

Python之禅 by Tim Peters

优美胜于丑陋。

鲜明胜于隐晦。

简洁胜于复杂。

复杂胜于凌乱。

扁平胜于嵌套。

稀疏胜于密集。

可读性至关重要。

即使是在更强调实用性的特例中,也不足以打破规则。

除非特意保持沉默,否者不要无视任何错误。

面对歧义,拒绝猜测。

当你解决问题时,理应存在唯一一种显然的解决方案。尽管这种解决方案并不容易获得,因为你毕竟不是Python之父。

实践出真知,三思而后行。

如果实现方法很难描述,那是个坏主意。

如果实现方法很容易描述,这可能是一个好主意。

名称空间是一个非常好的理念——让我们更多应用它吧!

优秀的开发者在完成程序的基本功能的同时,也完成了一件艺术作品。这件艺术作品就是程序代码。普通人可以对简单音乐作品的旋律、织体以及和声进行评价,但是当遇到复杂作品时,就无法对音乐进行有意义的评价了。普通人必须对音乐理论进行深入的学习,才可能分辨出作品的优劣,才有能有自己进行艺术创作。编程亦是如此,我们刚接触编程时,可以分辨出代码是否美观,然而却对于代码的细节处理无法进行评价,更不用说写出整洁优雅的代码了。但是随着学习的深入,我们会对Python之禅产生更深的理解。经过长期编程练习,我们的心智会愈发成熟,届时,我们不仅仅可以对他人的代码进行评价,给出我们自己的建议,同时也可以自己写出整洁优雅的代码了。

Last updated