python - 为什么函数(self,index)的索引没有在函数内部被调用并且函数仍然有效?
问题描述
我有这段工作和测试过的 Python 代码片段:
def renameFiles(self, index):
filename = self._filenames[self._current_index]
newFilename = self.createNewFilename()
self.currentFileName.setText(newFilename)
dirname = os.path.dirname(filename)
fullPath = os.path.join(dirname, newFilename)
os.replace(filename,fullPath)
self._filenames[self._current_index] = fullPath
self.current_index = self._current_index
为什么def renameFiles(self, index):中的索引没有在函数内部的任何地方调用,但函数仍然有效?(它可能不是最优化和最漂亮的代码,但仍然有效)
我已经搜索了几个小时的手册和指南,但仍然无法解决这个问题。在我了解它是如何工作的之前,我无法在我的项目中取得进展。
如果需要,我很乐意发布更多代码。
解决方案
在 python 中,用户定义的函数可以有任意数量的“不可调用”参数。例如,以下是一个有效的函数:
def f(a, b, c, d, e):
print("Hello World")
但是,除非您为变量 a 到 e 提供默认值,否则在不指定它们的情况下调用函数将引发异常
推荐阅读
- javascript - mochajs & chaijs - 未捕获的类型错误:无法读取未定义的属性“id”
- html - css 的 .htaccess 文件路径
- excel - 传递布尔值的问题 - VBA ADODB Oracle 存储过程
- algorithm - 求两个三角形之间最小距离的算法
- arrays - 垂直扩展 R 3D 数组
- amazon-web-services - 比较 AWS S3 中的 avro 数据类型
- python - 从 .tif 文件中减去 2 个像素值会给出错误的结果
- css - WordPress:独特的自定义插件 CSS
- java - Android - 从另一个类调用时,MediaPlayer 不会释放
- applescript - Applescript 移动到具有顺序命名的新文件夹