我只是进入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个)