say*_*yth 3 python function python-3.x
Python中有一个就地函数的概念。例如,shuffle它返回的是 inplace None。
如何确定函数是否就位?
from random import shuffle
print(type(shuffle))
<class 'method'>
Run Code Online (Sandbox Code Playgroud)
所以我知道它是一个methodfrom 类random,但是是否有一个特殊变量将某些函数定义为就地函数?
您无法预先了解给定函数的操作。您需要查看源代码并推断出此信息,或者检查其文档字符串并希望开发人员记录此行为。
例如,在list.sort:
help(list.sort)
Help on method_descriptor:
sort(...)
L.sort(key=None, reverse=False) -> None -- stable sort *IN PLACE*
Run Code Online (Sandbox Code Playgroud)
对于某些类型上操作的函数,它们的可变性通常可以让您提取有关操作的一些知识。例如,您可以确定所有对字符串进行操作的函数最终都会返回一个新函数,这意味着它们无法执行就地操作。这是因为你应该知道 Python 中的字符串是不可变的对象。
| 归档时间: |
|
| 查看次数: |
1002 次 |
| 最近记录: |