Python 如何使用if_uuname_uuu=='__主&';当我要存储的代码位于末尾时,函数

Python 如何使用if_uuname_uuu=='__主&';当我要存储的代码位于末尾时,函数,python,python-3.x,Python,Python 3.x,在我的代码中,我试图使用if\uuuuu name\uuuu==''\uuuu main\uuuu'函数,但是我想共享的变量在我不想运行的代码之后。 例如: 编程的 if __name__=='__main__': fname = input('what is your first name') sname = input('What is your second name') 可编程 import ProgramA print(fname) print(sname) 现在,我不

在我的代码中,我试图使用
if\uuuuu name\uuuu==''\uuuu main\uuuu'
函数,但是我想共享的变量在我不想运行的代码之后。
例如:

编程的

if __name__=='__main__':
   fname = input('what is your first name')
   sname = input('What is your second name')
可编程

import ProgramA
print(fname)
print(sname)

现在,我不希望在导入变量
fname
sname
以便在我的其他程序中使用时运行此代码,我只希望变量,而不希望它们附带的代码。但是,当我使用
if\uuuuu name\uuu='\ uuuuu main\uuuuu'
函数并尝试在之后保存变量时,程序B表示变量未定义。很抱歉,如果在另一个问题中已经回答了这个问题,但到目前为止,我还没有找到解决方案。

当您导入程序A时,您可以引用
fname
sname
,它们仍然是程序A中的值,这些值来自:

fname = input('what is your first name')
sname = input('What is your second name')
通过如下引用
ProgramA.fname
ProgramA.sname

import ProgramA
print(ProgramA.fname)
print(ProgramA.sname)
from ProgramA import *
print(fname)
print(sname)
或者,您可以这样导入它:

import ProgramA
print(ProgramA.fname)
print(ProgramA.sname)
from ProgramA import *
print(fname)
print(sname)

如果在程序A中uuu name uuu==“uuuu main”,则不应使用
<如果Python将此源代码文件作为主程序加载,并且从ProgramB导入时,code>\uuuu name\uuuuuuuuuuuuu
仅等于
“\uuuuuu main\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuu”
,因此变量
fname
sname
从未声明过,这就是为什么会出现这个错误。你可以在ProgramB中使用
如果
导入名字,sname。如果你需要
从ProgramA导入名字,sname
。如果你在哪里使用
如果
你的名字?编辑过的原始问题如果你运行
ProgramB.py
,那么
名字
将永远不会是
,但是,如果我不运行代码要求输入第一个和第二个名字,我如何打印这些名字呢ProgramB@ABo我不知道你在问什么。显然,您可以将
fname=input('what's first name')
sname=input('what's second name')
放在ProgramB中,只需完全删除ProgramA.py并在ProgramB中取消其导入,但我认为这不是问题的重点。