草庐IT

python - locals() 和 globals() 以及 python 中的 dir() 之间的区别

假设这段代码:>>>iterator=filter(lambdax:x%3==0,[2,18,9,22,17,24,8,12,27])>>>x=int()>>>locals(){'__package__':None,'__spec__':None,'__loader__':,'__name__':'__main__','__builtins__':,'iterator':,'x':0,'__doc__':None}>>>globals(){'__package__':None,'__spec__':None,'__loader__':,'__name__':'__main__','__

python - 导入错误 : No Module Named <parent dir>

我正在尝试通过Python学习编程,所以如果这是一个荒谬的简单问题,我提前道歉。我试图简化复杂的目录结构并利用Python的一些代码重用功能,我遇到了对我来说无法解释的ImportError错误。在过去的几个小时里,我一直在阅读有关Python的import、module和package功能(here、here、here和here其中其他),但我仍然无法解决这个(看似)简单的错误。问题来了。我有一个目录(dir),其中有一个子目录(subdir)。每个目录包含一些文件。因此,我的整体目录结构如下所示:dir/__init__.pydraw_lib.pysubdir/__init___.

python - 为什么 cls.__name__ 没有出现在 dir() 中?

假设我有一个简单的类:classFoobar(object):pass如果我使用dir(Foobar),我将得到以下输出:['__class__','__delattr__','__dict__','__doc__','__format__','__getattribute__','__hash__','__init__','__module__','__new__','__reduce__','__reduce_ex__','__repr__','__setattr__','__sizeof__','__str__','__subclasshook__','__weakref__']

python - 如何导入自己的模块进行模拟? (导入错误 : no module named my_module!)

我想对我的类进行单元测试,它位于另一个名为client_blogger.py的文件中。我的单元测试文件在同一目录中。我的所有其他单元测试都有效,除非我尝试模拟我自己的方法之一。##unit_test_client_blogger.pyimportmockimportjsonfromclient_bloggerimportBloggerClient,requestsClassTestProperties():@pytest.fixturedefblog(self):returnBloggerClient(api_key='123',url='http://example.com')@mo

python - PyCharm 不识别 Django 项目导入 : from my_app. 模型导入的东西

我刚开始在我现有的Django项目上测试PyCharm,它无法识别来self项目中应用程序的任何导入:在my_app1/models.py中:从my_app2.models导入东西“Unresolved引用‘my_app2’”这是为什么?我项目的目录结构与recommendedlayout匹配,并且它运行没有错误,只是PyCharm的魔法不想对其起作用。似乎与这个问题有关:Importappindjangoproject但是我不知道我做错了什么。如果我尝试:从..my_app2.models导入东西PyCharm错误消失,它可以自动预测等。但是当我运行项目时Django抛出:Value

python - dir() 与 __getattr__ 执行什么样的 python 魔术?

以下是python2.7和MySQLdb1.2.3。我需要一个类包装器来为不支持它的对象添加一些属性(带有__slots__的类和/或一些用C编写的类)所以我想出了这样的东西:classWrapper(object):def__init__(self,obj):self._wrapped_obj=objdef__getattr__(self,obj):returngetattr(self._wrapped_obj,attr)我期望在我的Wrapper实例上调用的dir()内置函数应该只返回对象继承的名称加上wrapped_obj,我发现这实际上是大多数情况的情况,但并非所有情况都是如此

python - 你如何获得 "My Documents"的确切路径?

在C++中,获取shell在WindowsXP和Windows7中称为“我的文档”以及在Vista中称为“文档”的文件夹的完整路径名并不难;见GetpathtoMyDocuments有没有在Python中执行此操作的简单方法? 最佳答案 您可以使用ctypes模块获取“我的文档”目录:importctypesfromctypes.wintypesimportMAX_PATHdll=ctypes.windll.shell32buf=ctypes.create_unicode_buffer(MAX_PATH+1)ifdll.SHGetS

python - MySQLdb 安装错误 - _mysql.c :44:23: error: my_config. h: No such file or directory

我正在尝试安装MySQLdb扩展,但我收到此错误,知道可能是什么原因吗?可能是有权限的东西?我正在使用MacOXLion....这是错误的一部分。Django安装正常,但我需要安装此扩展。感谢您的帮助。ppp-071ca:MySQL-python-1.2.4b4miguel_e$sudopythonsetup.pyinstallrunninginstallrunningbdist_eggrunningegg_infowritingMySQL_python.egg-info/PKG-INFOwritingtop-levelnamestoMySQL_python.egg-info/top_

python - Django:BASE_DIR 和 PROJECT_ROOT 之间的区别?

来自settings.py:BASE_DIR=os.path.dirname(os.path.dirname(os.path.abspath(__file__)))PROJECT_ROOT=os.path.dirname(os.path.abspath(__file__))这两者有什么区别? 最佳答案 它们几乎是一回事。BASE_DIR是您的manage.py所在的位置,PROJECT_ROOT是BASE_DIR+your_project_name(其中settings.py是)。 关于

Clojure 中的 Python "dir"等价物

有人知道是否有Clojure等同于Python的“dir”。基本上我需要知道我可以调用的函数或更具体地为java对象调用的函数我想知道可用的方法和属性(我不确定在java中它们是否被称为方法和属性,这是C#行话)。 最佳答案 clojure.contrib.repl-utils/show用于REPL:user=>(use'[clojure.contrib.repl-utils:only(show)])niluser=>(showString)===publicfinaljava.lang.String===[0]staticCASE