小编cle*_*ens的帖子

导入错误:没有名为numpy的模块

我对这个问题有一个非常相似的问题,但仍落后一步.我的Windows 7(抱歉)64位系统上只安装了一个版本的Python 3 .

我按照这个链接安装了numpy - 正如问题所示.安装顺利但我执行时

import numpy
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

导入错误:没有名为numpy的模块

我知道这可能是一个超级基本问题,但我还在学习.

谢谢

python import numpy scipy python-3.x

167
推荐指数
14
解决办法
61万
查看次数

JavaScript中的数组与对象效率

我有一个可能有数千个物体的模型.我想知道什么是最有效的存储方式和一旦我拥有它的id后检索单个对象.id是长号.

所以这些是我想到的两个选项.在选项1中,它是一个带有递增索引的简单数组.在选项2中,它是一个关联数组,也许是一个对象,如果它有所不同.我的问题是哪一个更有效,当我主要需要检索单个对象,但有时也循环遍历它们并进行排序.

选项一,非关联数组:

var a = [{id: 29938, name: 'name1'},
         {id: 32994, name: 'name1'}];
function getObject(id) {
    for (var i=0; i < a.length; i++) {
        if (a[i].id == id) 
            return a[i];
    }
}
Run Code Online (Sandbox Code Playgroud)

选项二与关联数组:

var a = [];  // maybe {} makes a difference?
a[29938] = {id: 29938, name: 'name1'};
a[32994] = {id: 32994, name: 'name1'};
function getObject(id) {
    return a[id];
}
Run Code Online (Sandbox Code Playgroud)

更新:

好的,我知道在第二个选项中使用数组是不可能的.因此第二个选项的声明行应该是:var a = {};并且唯一的问题是:在检索具有给定id的对象时表现更好:数组或id为关键字的对象.

而且,如果我必须多次对列表进行排序,答案会改变吗?

javascript performance

126
推荐指数
5
解决办法
11万
查看次数

Android SQLiteOpenHelper:为什么不调用onCreate()方法?

我正在尝试制作我的第一款Android应用.我注意到,SQLiteOpenHelper.onCreate()如果数据库不存在,则不会调用该方法来创建表.但是,onCreate()即使我尝试调试,该方法也无法正常工作.

请查看下面的代码,并给我任何建议.任何帮助将不胜感激.

public class NameToPinyinActivity extends Activity {

    DatabaseOpenHelper helper = null;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.nametopinyin);

        Button searchButton = (Button) findViewById(R.id.search);
        searchButton.setOnClickListener(new ButtonClickListener());

        helper = new DatabaseOpenHelper(NameToPinyinActivity.this);
    }

public class DatabaseOpenHelper extends SQLiteOpenHelper {

    /** DB Name */
    private static final String DB_NAME = "pinyin";

    /** CREATE TABLE SQL */
    private static final String CREATE_TABLE_SQL = "CREATE TABLE UNICODE_PINYIN"
            + "(ID INTEGER PRIMARY KEY AUTOINCREMENT, "
            + "UNICODE TEXT NOT NULL, PINYIN …
Run Code Online (Sandbox Code Playgroud)

java android android-sqlite

52
推荐指数
3
解决办法
6万
查看次数

端口8080已在使用中,并且未列出使用8080的进程

我试图从Eclipse启动Tomcat,但出现了一个问题:

Tomcat v6.0 Server在localhost上所需的端口8080已在使用中.服务器可能已在另一个进程中运行,或者系统进程可能正在使用该端口.要启动此服务器,您需要停止其他进程或更改端口号.

我试图在Windows上使用命令列出连接到此端口的进程:

netstat -aon
Run Code Online (Sandbox Code Playgroud)

但在上市时没有任何流程PID = 8080.我也尝试过:

netstat -aon | find "8080"
Run Code Online (Sandbox Code Playgroud)

但它也没有找到任何东西.谁能帮我?

java eclipse tomcat

27
推荐指数
2
解决办法
13万
查看次数

查找唯一排列的性能提示

TLDR: 如何在php中找到多维数组排列以及如何针对更大的数组进行优化?

这是这个问题的延续: 如何在php中找到多维数组排列

我们有排序数组的脚本,想法是找到数组的唯一排列,找到这个排列的规则是:

  1. 输入数组包含一组数组.
  2. 每个内部数组都包含唯一元素.
  3. 每个内部阵列可以具有不同的长度和不同的值.
  4. 输出数组必须包含完全相同的值.
  5. 输出内部数组必须在同一个键上具有唯一值.
  6. 如果没有解决方案,ie.: null则允许使用通配符 .
  7. 通配符可以在同一个键上复制.
  8. 解决方案应该具有尽可能少的通配符.
  9. 算法应该能够在不到180秒的时间内处理高达30x30的阵列.

到目前为止我有这个解决方案:

function matrix_is_solved(array $matrix) {
    foreach (array_keys(current($matrix)) as $offset) {
        $column = array_filter($raw = array_column($matrix, $offset));
        if (count($column) != count(array_unique($column))) return false;
    }
    return true;
}

function matrix_generate_vectors(array $matrix) {
    $vectors = [];
    $columns = count(current($matrix));
    $gen = function ($depth=0, $combo='') use (&$gen, &$vectors, $columns) {
        if ($depth < $columns)
             for ($i = 0; $i < $columns; $i++)
                $gen($depth …
Run Code Online (Sandbox Code Playgroud)

php arrays sorting performance

18
推荐指数
2
解决办法
694
查看次数

使用DeepL API翻译文本

有没有可能找出DeepL翻译是否提供翻译 API?不幸的是,我没有找到任何相关信息.

想要将其实现为Excel脚本以进行自动翻译.我已经尝试过使用Google(例如https://translate.google.com/#en/es/Hello%20World),但DeepL似乎更准确.

api excel translation google-translate deepl

13
推荐指数
2
解决办法
1万
查看次数

现代浏览器中的图案渐变

关于渲染严重的渐变(CSS,Canvas SVG),我得到越来越多的抱怨.

因为它高度依赖于浏览器和操作系统.我无法提出全球MCVE.所以我将专注于这个简单的CSS渐变,它在Chrome/Ubuntu(垂直条纹)上呈现得很糟糕:

body {
    background: linear-gradient(90deg, #111, #444);
}
Run Code Online (Sandbox Code Playgroud)

当然,我对这个具体案例的解决方案感兴趣.但我更重视一般解决方案,以获得平滑单调的渐变.基于画布或图像的解决方案是不可接受的,因为我的渐变是大量的,动态的,并且通常是部分透明的.

html css linear-gradients

13
推荐指数
1
解决办法
239
查看次数

选择器与动作Swift 4

Swift的新手.我下面有两个片段:

NotificationCenter.default.addObserver(self, 
    selector:#selector(ViewController.notificationReceived), 
    name: Notification.Name(rawValue: name), object: nil)

@objc func notificationReceived(notification:Notification){
    let x = notification.userInfo!
    print("\(x["name"]!)")

}
Run Code Online (Sandbox Code Playgroud)

最后

let x:UITapGestureRecognizer = UITapGestureRecognizer(target: self, 
    action: #selector(tapped))

self.addGestureRecognizer(x)

func tapped(){
    print("tapped")

    self.delegate!.theViewTapped()

}
Run Code Online (Sandbox Code Playgroud)

为什么这个notificationCenter?我应该提供参数的@objc标签,selector但不提供UITapGestureRecognizer动作参数?

SelectorAction inSwift有什么区别?

selector ios swift swift4

12
推荐指数
1
解决办法
2万
查看次数

php是否保留了关联数组中的顺序?

可能重复:
PHP关联数组是否已订购?

如果我用不同的键将项添加到关联数组中,是否保留了加法的顺序?如何访问给定元素的"previous"和"next"元素?

php arrays associative-array

11
推荐指数
2
解决办法
5249
查看次数

Python3 print()与Python2打印

在处理缓冲区溢出攻击时,我发现了一些非常奇怪的东西.我已经成功地发现我需要提供32个字符,然后才能跳转到正确的地址,并且正确的地址是0x08048a37.当我执行

python -c "print '-'*32+'\x37\x8a\x04\x08'" | ./MyExecutable
Run Code Online (Sandbox Code Playgroud)

该漏洞利用取得了成功.但是,当我尝试时:

python3 -c "print('-'*32+'\x37\x8a\x04\x08')" | ./MyExecutable
Run Code Online (Sandbox Code Playgroud)

它没有.可执行文件只会导致分段错误,而不会跳转到所需的地址.实际上,执行

python -c "print '-'*32+'\x37\x8a\x04\x08'"
Run Code Online (Sandbox Code Playgroud)

python3 -c "print('-'*32+'\x37\x8a\x04\x08')" 
Run Code Online (Sandbox Code Playgroud)

在控制台上产生两个不同的输出.当然,这些角色不可读,但它们在视觉上是不同的.

我想知道为什么会这样?

python stdout bytestring

11
推荐指数
1
解决办法
1294
查看次数