我有一个名为的脚本requests.py导入请求包.该脚本无法访问包中的属性,也无法导入它们.为什么这不起作用,我该如何解决?
以下代码提出了一个问题AttributeError.
import requests
res = requests.get('http://www.google.ca')
print(res)
Run Code Online (Sandbox Code Playgroud)
Traceback (most recent call last):
File "/Users/me/dev/rough/requests.py", line 1, in <module>
import requests
File "/Users/me/dev/rough/requests.py", line 3, in <module>
requests.get('http://www.google.ca')
AttributeError: module 'requests' has no attribute 'get'
Run Code Online (Sandbox Code Playgroud)
以下代码提出了一个问题ImportError.
from requests import get
res = get('http://www.google.ca')
print(res)
Run Code Online (Sandbox Code Playgroud)
Traceback (most recent call last):
File "requests.py", line 1, in <module>
from requests import get
File "/Users/me/dev/rough/requests.py", line 1, in <module>
from requests import get
ImportError: cannot import name 'get' …Run Code Online (Sandbox Code Playgroud) 在 Mac 上使用 Python 和 Atom 进行工作。代码:
from rubik.cube import Cube
from rubik_solver import utils
Run Code Online (Sandbox Code Playgroud)
完整错误:
Traceback (most recent call last):
File "/Users/Audey/Desktop/solver.py", line 2, in <module>
from rubik_solver import utils
File "/Users/Audey/Library/Python/3.10/lib/python/site-packages/rubik_solver/utils.py", line 4, in <module>
from past.builtins import basestring
File "/Users/Audey/Library/Python/3.10/lib/python/site-packages/past/builtins/__init__.py", line 43, in <module>
from past.builtins.noniterators import (filter, map, range, reduce, zip)
File "/Users/Audey/Library/Python/3.10/lib/python/site-packages/past/builtins/noniterators.py", line 24, in <module>
from past.types import basestring
File "/Users/Audey/Library/Python/3.10/lib/python/site-packages/past/types/__init__.py", line 25, in <module>
from .oldstr import oldstr
File "/Users/Audey/Library/Python/3.10/lib/python/site-packages/past/types/oldstr.py", line 5, in …Run Code Online (Sandbox Code Playgroud) 我有一个封装mypack与模块mod_a,并mod_b在里面.我打算包装本身并mod_a自由进口:
import mypack
import mypack.mod_a
Run Code Online (Sandbox Code Playgroud)
但是,我想保留mod_b专属用途mypack.那是因为它的存在仅仅是为了组织后者的内部代码.
我的第一个问题是,在Python编程中接受这样的"私有"模块是否可以接受?
如果是,我的第二个问题是,向客户传达这一意图的最佳方式是什么?我是否在名称前加下划线(即_mod_b)?或者声明一个子包private并将所有这些模块放在那里是一个好主意吗?
我以这种格式定义了一个.py文件:
def foo1(): pass
def foo2(): pass
def foo3(): pass
Run Code Online (Sandbox Code Playgroud)
我从另一个文件导入它:
from foo import *
# or
import foo
Run Code Online (Sandbox Code Playgroud)
是否可以列出所有功能名称,例如["foo1", "foo2", "foo3"]?
谢谢你的帮助,我为我想要的东西上了课,如果你有建议,请评论
class GetFuncViaStr(object):
def __init__(self):
d = {}
import foo
for y in [getattr(foo, x) for x in dir(foo)]:
if callable(y):
d[y.__name__] = y
def __getattr__(self, val) :
if not val in self.d :
raise NotImplementedError
else:
return d[val]
Run Code Online (Sandbox Code Playgroud) 如何在Python中访问Microsoft Access数据库?用SQL?
我会优先选择适用于Linux的解决方案,但我也可以选择Windows.
我只需要读访问权限.
我在一个fibo.py文件中有一个模块,它具有以下功能 -
#fibonacci numbers module
def fib(n): # write Fibonacci series up to n
a, b = 0, 1
while b < n:
print(b, end=' ')
a, b = b, a+b
print()
def fib2(n): # return Fibonacci series up to n
result = []
a, b = 0, 1
while b < n:
result.append(b)
a, b = b, a+b
return result
Run Code Online (Sandbox Code Playgroud)
现在当我从cli python3运行模块时 -
> python3 -m fibo.py
Run Code Online (Sandbox Code Playgroud)
我收到了错误
Error while finding spec for 'fibo.py' (<class 'AttributeError'>:
'module' …Run Code Online (Sandbox Code Playgroud) 是否有用于打开IBM SPSS(即.sav)文件的Python模块?如果最新的东西不需要任何额外的DLL文件/库,那将是很棒的.
我正试图在我的计算机上安装鼻子来学习"学习Python困难之路"教程,但似乎无法让它工作.我正在使用pip安装:
$ pip install nose
Run Code Online (Sandbox Code Playgroud)
我回来了:
Requirement already satisfied (use --upgrade to upgrade): nose in /usr/local/lib/python2.7/site-packages
Cleaning up...
Run Code Online (Sandbox Code Playgroud)
但是,当我运行命令nosetests时,我得到:
-bash: nosetests: command not found
Run Code Online (Sandbox Code Playgroud)
我认为我的PATH有问题,老实说我不知道.任何帮助将不胜感激!
在Python中使用相对导入有一个缺点,您将无法再将模块作为独立模块运行,因为您将获得异常: ValueError: Attempted relative import in non-package
# /test.py: just a sample file importing foo module
import foo
...
# /foo/foo.py:
from . import bar
...
if __name__ == "__main__":
pass
# /foo/bar.py: a submodule of foo, used by foo.py
from . import foo
...
if __name__ == "__main__":
pass
Run Code Online (Sandbox Code Playgroud)
我应该如何修改样本代码,以便能够执行所有:test.py,foo.py和bar.py
我正在寻找一个适用于python 2.6+(包括3.x)的解决方案.
python-module ×10
python ×9
dataset ×1
exception ×1
linux ×1
module ×1
ms-access ×1
nose ×1
nosetests ×1
packages ×1
python-2.7 ×1
python-3.x ×1
shadowing ×1
spss ×1
statistics ×1