小编Nod*_*ame的帖子

numpy已与Anaconda一起安装,但出现ImportError(DLL加载失败:找不到指定的模块)

我在Python 3.7中使用Anaconda发行版。在安装的软件包中,我有numpy,pandas等。在PyCharm IDE中,我已将Project Interpreter设置为通过Anaconda安装的python.exe的路径:C:\ Users \ my_user_name \ AppData \ Local \ Continuum \ anaconda3 \ python.exe

但是,当我尝试运行简单的python脚本时:

import numpy as np
print(np.pi)
Run Code Online (Sandbox Code Playgroud)

我收到一个错误:

ImportError:导入多数组numpy扩展模块失败。您极有可能尝试导入失败的numpy构建。如果您使用的是numpy git repo,请尝试git clean -xdf(删除不受版本控制的所有文件)。否则,请重新安装numpy。

原始错误是:DLL加载失败:找不到指定的模块。

请参阅下面的完整错误消息:


追溯(最近一次通话):文件“ C:\ Users \ my_user_name \ AppData \ Local \ Continuum \ anaconda3 \ lib \ site-packages \ numpy \ core__init __。py”,位于第16行。import multiarray ImportError:DLL加载失败:找不到指定的模块。

在处理上述异常期间,发生了另一个异常:

追溯(最近一次通话):文件“ C:/Users/my_user_name/Documents/TestMyApps/simpletest.py”,第1行,在导入numpy中作为np文件“ C:\ Users \ my_user_name \ AppData \ Local \ Continuum \ anaconda3 \ lib \ site-packages \ numpy__init __。py“,第142行,位于。从numpy.lib的第13行,导入add_newdocs文件“ C:\ …

python numpy pycharm python-3.x

14
推荐指数
5
解决办法
9770
查看次数

Python subprocess.Popen() 在 docker 容器中不起作用 - 在本地工作正常

我创建了一个要部署在服务器上的 Django REST 框架项目。我没有对服务器的管理员访问权限,因此,我发现确保所有项目依赖项(例如 Anaconda 发行版)在服务器上可用的唯一方法是为我的项目创建一个 docker 映像,然后创建服务器上的相应容器,然后从那里运行它。

在我的项目中,我有一个使用 subprocess.Popen() 调用的 python 脚本 (mymain.py)。这在本地工作正常,并且 subprocess.Popen() 完成它应该做的一切。

但是,当我尝试从 docker 容器执行此操作时,似乎完全跳过了 subprocess.Popen() 行 [未调用 mymain.py]。

对于 docker,我创建了一个 docker-compose.yml 文件,并在命令提示符中键入:

docker-compose up
Run Code Online (Sandbox Code Playgroud)

我没有看到任何错误,一切似乎都运行良好,但是 subprocess.Popen() 似乎不起作用。

mymain.py 第一行是:

print('Testing if subprocess called mymain.py!!!')  
Run Code Online (Sandbox Code Playgroud)

在另一个文件中,我调用 subprocess.Popen()。我尝试打印出错误,但不幸的是,stdout 和 stderr 都没有返回:

p = subprocess.Popen(['python', mymain_path, args], shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT) 
out, err = p.communicate()
print('SUBPROCESS ERROR: ' + str(err))
print('SUBPROCESS stdout: ' + str(out.decode()))    
Run Code Online (Sandbox Code Playgroud)

这就是我得到的:

SUBPROCESS ERROR: None
SUBPROCESS stdout:
Run Code Online (Sandbox Code Playgroud)

如您所见,我的 main.py 的第一行从未打印过...

但是,当我通过键入命令提示符在本地执行此操作时:

python manage.py runserver 9000 …
Run Code Online (Sandbox Code Playgroud)

django subprocess python-3.x docker

7
推荐指数
1
解决办法
6699
查看次数

如何在 Python 中模拟类实例(而不是类函数)

我很难模拟一个对象的实例。

我想编写一个单元测试来测试使用类实例的“my_func”函数。我知道如何模拟类函数,但是,我不知道如何模拟类(对象)本身(而不是函数)的实例。

在我的模块文件中:

# my_module.py

import fancypackage1
import fancypackage2
def my_func():
    x = fancypackage1.SomeClass.somefunction() # I know how to mock this
    myclient = fancypackage2.Client() # I don't know how to mock this
    myresult = do_something(myclient, x) # I know how to mock this
    return myresult
Run Code Online (Sandbox Code Playgroud)

在我的测试文件中:

# test_my_module.py

import pytest
import mock
import fancypackage1
import fancypackage2
from my_module import my_func    

def test_my_func(mocker):
    mock_someclass_somefunction = mocker.patch('my_module.fancypackage1.SomeClass.somefunction')
    mock_someclass_somefunction.return_value = 'hello'

    mock_client = mocker.patch.object(fancypackage2.Client, '__init__') # TypeError: __init__() should return None, not 'MagicMock' …
Run Code Online (Sandbox Code Playgroud)

mocking pytest python-3.x pytest-mock

6
推荐指数
1
解决办法
5536
查看次数

在C#中获取JavaScript/HTML变量的值

我正在尝试从中提取数据的网页.通过查看页面Source中的HTML,我可以在脚本标记中找到我感兴趣的数据.它看起来如下:

<html>
<script type="text/javascript">

window.gon = {};
gon.default_profile_mode = false; 
gon.user = null;  
gon.product = "shoes";
gon.books_jsonarray = [
{
    "title": "Little Sun",
    "authors": [
        "John Smith"
    ],
    edition: 2,
    year: 2009
},
{
    "title": "Little Prairie",
    "authors": [
        "John Smith"
    ],
    edition: 3,
    year: 2009
},
{
    "title": "Little World",
    "authors": [
        "John Smith",
        "Mary Neil",
        "Carla Brummer"
    ],
    edition: 3,
    year: 2014
}
];

</script>
</html>
Run Code Online (Sandbox Code Playgroud)

我想要实现的是,使用其URL调用网页,然后从JavaScript中检索'gon'变量并将其存储在C#变量中.换句话说,在C#中,我希望有一个数据结构(例如字典),它将保存'gon'的值.

我已经尝试过研究如何通过C#WebBrowser获取JavaScript中定义的变量,这就是我发现的:

using System;
using System.Collections.Generic;
using System.Windows.Forms;
using System.Net;
using System.Runtime.InteropServices; …
Run Code Online (Sandbox Code Playgroud)

html javascript c# web

5
推荐指数
1
解决办法
1015
查看次数