python - Python全局变量问题

标签 python string python-3.3

如果我今晚很蠢的话,我不知道,但由于某种原因,这在 Python 中不起作用。我试图在 python 中的函数中设置变量,每当我打印它们时,我都会得到一个“函数+函数名称+十六进制值而不是字符串”,任何人都可以给我一些建议。

import sys


def serverAdd():
    global serverAdd
    if len(sys.argv) <2:
        serverAdd = input('Please enter server address:')
    else:
        serverAdd = sys.argv[1]

def serverPort():
    global portNumber
    if len(sys.argv) <3:
        portNumber = input('Please enter port number for server:')
    else:
        portNumber = sys.argv[2]


def serverPassword():
    global serverPassword
    if len(sys.argv)< 4:
        password = input('Please enter server password:')
    else:
        password = sys.argv[3]




serverAdd()
print(serverAdd)
serverPort()
print(serverPort)
serverPassword()
print(serverPassword)``

谢谢

最佳答案

在函数内声明全局性:

def inputPass():
    global passNumber
    passNumber = input('Please enter pass number')

就我个人而言我更喜欢避免全局变量,而是会写:

def inputPass():
    return input('Please enter pass number')

关于python - Python全局变量问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15285236/

相关文章:

python - 无错误地停止 Python 代码

python - Python 3.3 的线性规划优化包?

python - 试图从/nix/store 中删除一个包,现在系统出现错误,如何修复?

android - 用于获取子字符串的开始和结束索引的 Kotlin 函数

java - 如何组织辅助函数

r - 有没有办法运行包含在字符串对象(在 R 中)中的代码?

Pythonbrew 无法安装 python 3.3?

Python惰性迭代器

python - http 检查 python

python - 如何生成键盘事件?