Python中怎样简单地用一行写if-then语句?

Python010

Python中怎样简单地用一行写if-then语句?,第1张

我只是进入Python,我真的很喜欢语法的简洁。但是,是否有更简单的方法来编写if-then语句,以便它适合一行?

例如:

有没有更简单的写这个方法?我的意思是,在Objective-C中,我会把它写成:

Python有什么类似的东西吗?

更新

我知道在这种情况下,我可以使用 count == (count + 1) % N 。

我在问一般的语法。

这更像是一个 ternary operator 表达式,而不是if-then,这是python语法

更好的例子: (感谢 Mr. Burns

和赋值语句一起使用:

对比:

翻译整理: codewenda.com

英文原文: stackoverflow

python内置函数是什么?一起来看下吧:

python内置函数有:

abs:求数值的绝对值

>>>abs(-2) 2

pmod:返回两个数值的商和余数

>>>pmod(5,2) (2,1) >>pmod(5.5,2) (2.0,1.5)

bool:根据传入的参数的逻辑值创建一个布尔值

>>>bool() #未传入参数 False >>>bool(0) #数值0、空序列等值为False False >>>bool(1) True

all:判断可迭代对象的每个元素是否都为True值

>>>all([1,2]) #列表中每个元素逻辑值均为True,返回True True >>> all(()) #空元组 True >>> all({}) #空字典 True

help:返回对象的帮助信息

>>> help(str)  Help on class str in module builtins: class str(object) |  str(object='') -> str |  str(bytes_or_buffer[, encoding[, errors]]) -> str |   |  Create a new string object from the given object. If encoding or |  errors is specified, then the object must expose a data buffer |  that will be decoded using the given encoding and error handler. |  Otherwise, returns the result of object.__str__() (if defined) |  or repr(object). |  encoding defaults to sys.getdefaultencoding(). |  errors defaults to 'strict'. |   |  Methods defined here: |   |  __add__(self, value, /)           Return self+value.

_import_:动态导入模块

index = __import__('index') index.sayHello()

locals:返回当前作用域内的局部变量和其值组成的字典

>>> def f():     print('before define a ')     print(locals()) #作用域内无变量     a = 1     print('after define a')     print(locals()) #作用域内有一个a变量,值为1 >>> f>>> f() before define a  {}  after define a {'a': 1}

input:读取用户输入值

>>> s = input('please input your name:') please input your name:Ain >>> s 'Ain'

open:使用指定的模式和编码打开文件,返回文件读写对象

# t为文本读写,b为二进制读写 >>> a = open('test.txt','rt') >>> a.read() 'some text' >>> a.close()

eval:执行动态表达式求值

>>> eval('1+2+3+4') 10

除了上述举例的函数之外,内置函数按分类还可分为:

1、数学运算(7个)

2、类型转换(24个)

3、序列操作(8个)

4、对象操作(7个)

5、反射操作(8个)

6、变量操作(2个)

7、交互操作(2个)

8、文件操作(1个)

9、编译操作(4个)

10、装饰器(3个)