Python自定义函数

标签 python function python-3.x

上周我一直在努力学习 Python,而且进展非常顺利,但是现在我被介绍了自定义函数,我有点碰壁了。虽然我了解它的基础知识,例如:

def helloworld():
    print("Hello World!")

helloworld()

我知道这会打印“Hello World!”。

但是,当涉及到从一个函数获取信息到另一个函数时,我发现这很困惑。即:function1 和 function2 必须协同工作才能执行任务。此外,何时使用 return 命令。

最后,当我在函数内部有一个列表或字典时。我会编一些东西作为例子。

def my_function():
    my_dict = {"Key1":Value1,
              "Key2":Value2,
              "Key3":Value3,
              "Key4":Value4,}

我如何访问键/值并能够从函数外部更改它们?即:如果我有一个程序可以让您输入/输出玩家统计数据或视频游戏中的角色属性。

我理解其中的点点滴滴,当它们有不同的功能相互调用时,这只会让我感到困惑。

此外,因为这是我第一次接触自定义函数。这真的是雄心勃勃的追求吗?这可能是我所有困惑的原因吗?因为这是我见过的最复杂的程序。

最佳答案

python 中的

Functions 可以是常规的 procedure 和具有返回值的 function。实际上,每个 Python 函数都会返回一个值,可能是 None

如果不存在 return 语句,那么您的函数将完全执行并按照代码流正常离开,产生 None 作为返回值。

def foo():
    pass
foo() == None
>>> True

如果您的函数中有一个return 语句。返回值将是它后面的表达式的返回值。例如,您可能有 return None 并且您将显式返回 None。您也可以不带任何其他内容而使用 return,这样您将隐式返回 None,或者您可以使用 return 3,这样您将返回值 3。这可能会增加复杂性。

def foo():
   print('hello')
   return
   print('world')

foo()
>>>'hello'

def add(a,b):
    return a + b
add(3,4)
>>>7

如果您想要在函数内创建的字典(或任何对象),只需返回它:

def my_function():
    my_dict = {"Key1":Value1,
              "Key2":Value2,
              "Key3":Value3,
              "Key4":Value4,}
    return my_dict
d = my_function()
d['Key1']
>>> Value1

这些是函数调用的基础。还有更多。有些函数返回函数(也被视为装饰器。您甚至可以返回多个值(不是真的,您只会返回一个元组)和很多有趣的东西:)

def two_values():
    return 3,4
a,b = two_values()
print(a)
>>>3
print(b)
>>>4

希望这对您有所帮助!

关于Python自定义函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17936970/

相关文章:

python - scipy 0.11.0 到 0.12.0 改变了线性 scipy.interpolate.interp1d,打破了我不断更新的插值器

python - 如何检查字典列表是否已排序?

javascript - 在方法 JQuery 之外使用我的变量

通过泛型指针调用 C 函数

python - 创建一个函数,当您使用 python 输入出生日期时,打印您的年龄(以年为单位)

python - 如何禁用 Tkinter 列表框中的水平滚动? (Python 3)

python - 为什么 sum(DF) 的行为与 DF.sum() 不同?

python - 一起使用数据类和属性时出现奇怪的问题

Python:设置函数的最大值并循环查找数组中下一个值的最大值

json - Tkinter 回调 : json. 解码器中出现异常。JSONDecodeError:期望值:第 1 行第 1 列(字符 0)