获取没有函数参数的函数值

2024-09-28 03:19:37 发布

您现在位置:Python中文网/ 问答频道 /正文

这很难解释,所以我感谢你的耐心。这就是我进入调试日志API的原因。我想从一个444行长的程序中得到值。问题是,它们都结束了,所以我不能就这么走了:
def func(foo, goo, hoo, joo):
我需要将一个字典、两个整数和一个字符串放入名为strlogger()的函数中。我需要从另一个名为ifelogger()的函数中获取的整数之一。我该怎么做?示例:

import random
def strlogger():
    # Get Dictionary, int1, int2, and string
    print('Dict: ' + dict,
          'int1: ' + int1,
          'int2: ' + int2,
          'str : ' + string)
def ifelogger():
    random.randint(0, 999999999)

函数的调用方式如下:ifelogger()。如果有任何简单(或困难,我不在乎,只要它工作)的解决办法,这个问题我有,它将不胜感激。如果你有任何问题,请发表评论。谢谢



Tags: 函数程序apistringfoodef原因整数
1条回答
网友
1楼 · 发布于 2024-09-28 03:19:37

使感兴趣的变量具有文件级作用域,而不是隐藏在函数级作用域中

dict = {}
int1 = 1
int2 = 2
string = 'foo'

def strlogger():
    # Get Dictionary, int1, int2, and string
    print('Dict: ' + dict,
          'int1: ' + int1,
          'int2: ' + int2,
          'str : ' + string)

def ifelogger():
    global int1
    int1 = random.randint(0, 999999999)

请注意,如果在函数中更改全局变量的值(不仅仅是读取它),则必须将其声明为global,否则Python将创建函数的局部变量

ifelogger中,当设置int1时,它是文件级作用域的int1变量。这与int1在打印值时看到的strlogger相同

相关问题 更多 >

    热门问题