python - Python中的“dummy_func”是什么
问题描述
我在应用程序的源代码中看到以下部分。我想知道dummy_func
Python 编程的目的是什么。
它在一个.py
名为 的文件00xx_xxxxxxxx_public_id.py
中,dummy_func
稍后在migrations.RunPython(generate_public_ids, dummy_func),
.
任何建议将不胜感激。
...
# Generated by Django 2.2.5 on 2020-xx-xx xx:xx
from django.db import migrations, models
...
def generate_public_ids(apps, schema_editor):
...
def dummy_func(apps, schema_editor):
pass
class Migration(migrations.Migration):
dependencies = [
...
]
operations = [
migrations.AddField(
model_name='...',
name='public_id',
field=models.CharField(blank=True, db_index=True, max_length=32, null=True, verbose_name='short code public identifier'),
),
migrations.RunPython(generate_public_ids, dummy_func),
]
...
解决方案
在您编辑后的新上下文中,代码的作者似乎引用了其他人 (OP) 的函数并复制粘贴了 OP 的函数。作者不想使用 OP 创建的第二个参数,但懒得更改 OP 的代码,所以他采用了提供 dummy 参数的惰性方法。
我个人做过几次作者做过的事情。因为,有时时间很重要。删除一个参数需要几行重构,而创建一个虚拟函数只需要两行额外的代码。
顾名思义, pass 语句什么都不做。Python 中的 pass 语句用于语法上需要语句但您不希望执行任何命令或代码时。这就像空操作,因为它被执行什么都不会发生。Pass 语句也可用于编写空循环。Pass 也用于空的控制语句、函数和类。
例子:
def fun():
pass
推荐阅读
- r - 如何通过 for 循环更改列类型?
- vba - 宏如何写入工作表中的选定单元格
- c - 无法理解 fork() 和进程树
- c# - C# 正则表达式拆分引号和逗号语法错误
- python - py4j.protocol.Py4JJavaError: 调用 z:org.apache.spark.mllib.api.python.SerDe.pythonToJava 时出错
- javascript - React:如何设置对象属性的状态?
- regex - 使用 RegEx 和 Beautiful Soup 查找锚文本 - RegEx 无法按预期工作
- python-3.x - 使用 joblib 时 time.time() 库返回意外结果
- rust - 为什么 rust 在引用可变变量时会重新声明可变性?
- javascript - 根据输入文本字段的焦点反应条件渲染