Python拾遗:如何利用这些特性编写更简洁、易读或高效的代码?
- 内容介绍
- 文章标签
- 相关推荐
本文共计5090个文字,预计阅读时间需要21分钟。
本章将带领大家回顾那些被遗忘的地方。Python提供了许多功能,虽然并非全部都是必需的(不使用它们也能写出优秀的代码),但有时利用这些功能可以写出更简洁、更易读或更高效的代码。
本章我会带领大家回顾那些遗漏的地方。Python提供了不少并不是完全必需的功能(不用它们也能写出好代码),但有时候,使用这些功能可以写出更简洁、更可读或者更高效的代码,甚至有时候三者兼得。
19.1 条件表达式
我们在5.4节中见过条件语句。条件语句通常用来从两个值中选择一个。例如:
if x > 0:y = math.log(x)
else:
y = float('nan')
这条语句检查x是否为正数。如果为正数,则计算math.log;如果为负数,math.log会抛出ValueError异常。为了避免程序停止,我们直接生成一个“NaN”,一个特殊的浮点数,代表“不是数”(Not A Number)。
我们可以用条件表达式来更简洁地写出这条语句:
y = math.log(x) if x > 0 else float('nan')这条语句几乎可以用英语直接读出来:“y gets log-x if x is greater than 0; otherwise it gets NaN”(Y的值在x大于0时是math.log(x),否则是NaN)。
递归函数有时候可以用条件表达式重写。
本文共计5090个文字,预计阅读时间需要21分钟。
本章将带领大家回顾那些被遗忘的地方。Python提供了许多功能,虽然并非全部都是必需的(不使用它们也能写出优秀的代码),但有时利用这些功能可以写出更简洁、更易读或更高效的代码。
本章我会带领大家回顾那些遗漏的地方。Python提供了不少并不是完全必需的功能(不用它们也能写出好代码),但有时候,使用这些功能可以写出更简洁、更可读或者更高效的代码,甚至有时候三者兼得。
19.1 条件表达式
我们在5.4节中见过条件语句。条件语句通常用来从两个值中选择一个。例如:
if x > 0:y = math.log(x)
else:
y = float('nan')
这条语句检查x是否为正数。如果为正数,则计算math.log;如果为负数,math.log会抛出ValueError异常。为了避免程序停止,我们直接生成一个“NaN”,一个特殊的浮点数,代表“不是数”(Not A Number)。
我们可以用条件表达式来更简洁地写出这条语句:
y = math.log(x) if x > 0 else float('nan')这条语句几乎可以用英语直接读出来:“y gets log-x if x is greater than 0; otherwise it gets NaN”(Y的值在x大于0时是math.log(x),否则是NaN)。
递归函数有时候可以用条件表达式重写。

