草庐IT

global-required

全部标签

python - 避免使用 global 不会让 Python 编程新手感到困惑?

我已经教8-9年级的学生基本计算机编程两周了,昨天我试图向他们展示如何用Python制作真正简单的文字冒险游戏。场景是函数(例如dragons_cave()),它包含一些打印语句,然后调用input(),询问玩家他们想去哪里接下来,然后传递给globals()以找到合适的函数,然后调用。我知道这并不理想(到什么时候庞大的功能链会开始成为问题?)但是,我想到的是,这对他们来说似乎是最简单的,只需要一点点手工操作。我的问题是全局状态——例如。玩家在一个场景中获得一把key,然后他们才能在另一个场景中打开大门。当我有字符串或bool值等全局不可变值时,Python希望我在函数开头使用glob

python - 类型错误 : 'in <string>' requires string as left operand, 不是整数

为什么我在非常基本的Python脚本中会收到此错误?错误是什么意思?错误:Traceback(mostrecentcalllast):File"cab.py",line16,inifcabinline:TypeError:'in'requiresstringasleftoperand,notint脚本:importreimportsys#loco=sys.argv[1]cab=6176fileZ=open('cabs.txt')fileZ=list(set(fileZ))forlineinfileZ:ifcabinline:IPaddr=(line.strip().split())pr

python - 子进程 "TypeError: a bytes-like object is required, not ' str'"

我正在使用来自apreviouslyaskedquestionafewyearsago的代码但是,我认为这已经过时了。尝试运行代码时,我收到了上面的错误。我仍然是Python的新手,所以我无法从类似的问题中得到太多的澄清。有谁知道为什么会这样?importsubprocessdefgetLength(filename):result=subprocess.Popen(["ffprobe",filename],stdout=subprocess.PIPE,stderr=subprocess.STDOUT)return[xforxinresult.stdout.readlines()if"

python - Pandas 导入错误 : matplotlib is required for plotting

Pandas无法识别已安装的matplotlib库这是代码importpandasaspdimportnumpyasnpimportmatplotlib.pyplotasplt%matplotlibinlinets=pd.Series(np.random.randn(1000),index=pd.date_range('1/1/2000',periods=1000))ts=ts.cumsum()ts.plot()错误是c:\users\xxxxx\appdata\local\programs\python\python36\lib\site-packages\pandas\plotti

python - 为什么 globals() 是 Python 中的一个函数?

Python提供函数globals()来访问所有全局变量的字典。为什么这是一个函数而不是一个变量?以下作品:g=globals()g["foo"]="bar"printfoo#Worksandoutputs"bar"在函数中隐藏全局变量的基本原理是什么?是只调用一次并在某处存储引用更好,还是我应该在每次需要时调用它?恕我直言,这不是Reasonforglobals()inPython?的副本,因为我不是在问为什么globals()存在,而是为什么它必须是一个函数(而不是变量__globals__)。 最佳答案 因为它可能取决于Pyt

python - 你如何解决错误KeyError : 'A secret key is required to use CSRF.' when using a wtform in flask application?

我一直在尝试使用flask和wtforms以及firebase数据库构建网络应用程序,但我不断收到错误消息“KeyError:‘使用CSRF需要key。’”而且我不知道该怎么做解决它。这是我的代码:fromflaskimportFlask,render_template,requestfromfirebaseimportfirebasefromflask_wtfimportFlaskFormfromflask_wtf.csrfimportCSRFProtect,CSRFErrorfromwtformsimportDateField,StringField,TextAreaFieldfr

python - 机器人框架 : access Robot's global variables from Python library code?

我有一些设置类型的全局变量,我希望能够从Python代码访问这些变量。例如:pybot--variableRESULTS_PATH:/wherever/this/pointstest.txt现在,我的模块logger.py文件需要知道results_path才能正确设置。我知道我可以用变量初始化记录器,比如***Settings***Librarylogger${RESULTS_PATH}然后在记录器中我将传递results_path:def__init__(self,results_path):#Whatever但是对我来说这样做的问题是我想从Python代码和测试用例中访问和使用记

python 结构。错误: 'i' format requires -2147483648 <= number <= 2147483647

问题我愿意使用多处理模块(multiprocessing.Pool.starmap())进行特征工程。但是,它给出如下错误消息。我猜这个错误消息是关于输入的大小(2147483647=2^31−1?),因为相同的代码对于输入数据帧的分数(frac=0.05)运行顺利(train_scala,测试,TS).我将数据框的类型转换为尽可能小,但它并没有变得更好。anaconda版本为4.3.30,Python版本为3.6(64位)。并且系统的内存大小超过128GB,超过20个核心。您想提出任何建议或解决方案来克服这个问题吗?如果这个问题是由多处理模块的大数据引起的,我应该使用多少小数据来利用

python - 类型错误 : descriptor 'strftime' requires a 'datetime.date' object but received a 'Text'

我有一个变量testeddate,它有一个文本格式的日期,如4/25/2015。我正在尝试将其转换为%Y-%m-%d%H:%M:%S,如下所示:dt_str=datetime.strftime(testeddate,'%Y-%m-%d%H:%M:%S')但是我遇到了这个错误:TypeError:descriptor'strftime'requiresa'datetime.date'objectbutreceiveda'Text'我该如何解决? 最佳答案 您有一个Text对象。strftime函数需要一个日期时间对象。下面的代码采取一

Python: "global name ' 时间'未定义”

我正在为一个打印“Wearetheknightswhosay'Ni'!”的friend用Python编写一个愚蠢的程序。然后休眠3秒,然后打印“Ni!”使用random模块的uniform()方法以随机间隔执行二十次。这是我的代码:fromtimeimportsleepimportrandomdefknights_of_ni():generator=random.Random()print"Wearetheknightswhosay'ni'."sleep(3)foriinrange(0,20):print"Ni!"sleep(generator.uniform(0,2))我尝试通过在解