小编Rah*_*hul的帖子

如何在Go中找到一个对象的类型?

如何在Go中找到对象的类型?在Python中,我只是typeof用来获取对象的类型.同样在Go中,有没有办法实现相同的?

这是我正在迭代的容器:

for e := dlist.Front(); e != nil; e = e.Next() {
    lines := e.Value
    fmt.Printf(reflect.TypeOf(lines))
}
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我无法获得对象行的类型,这是一个字符串数组.

go go-reflect

339
推荐指数
10
解决办法
31万
查看次数

如何在MySQL中模拟print语句?

我有一些程序,我希望在评估条件后得到某种确认.

例如,pusedocode就像,

if ( select count(*) from assgn to where eid = 1 )  > 5
  print " the total number of projects employee working is more than 5 "
else
  insert the value into the assgnto table  
Run Code Online (Sandbox Code Playgroud)

我该如何在MySQL中这样做呢?

mysql

44
推荐指数
3
解决办法
10万
查看次数

如何在Golang中使用未知参数执行系统命令

我有一堆系统命令,它们与将新内容附加到文件有点类似.我编写了一个简单的脚本来执行系统命令,如果有单个单词如'ls','date'等,它会很好用.但是如果命令大于那个,程序就会死掉.

以下是代码

package main

import (
    "fmt"
    "os/exec"
    "sync"
)

func exe_cmd(cmd string, wg *sync.WaitGroup) {
    fmt.Println(cmd)
    c = cmd.Str
    out, err := exec.Command(cmd).Output()
    if err != nil {
        fmt.Println("error occured")
        fmt.Printf("%s", err)
    }
    fmt.Printf("%s", out)
    wg.Done()
}

func main() {
    wg := new(sync.WaitGroup)
    wg.Add(3)

    x := []string{"echo newline >> foo.o", "echo newline >> f1.o", "echo newline >> f2.o"}
    go exe_cmd(x[0], wg)
    go exe_cmd(x[1], wg)
    go exe_cmd(x[2], wg)

    wg.Wait()
}
Run Code Online (Sandbox Code Playgroud)

以下是我看到的错误

exec: "echo newline >> foo.o": executable file not found …
Run Code Online (Sandbox Code Playgroud)

go

44
推荐指数
3
解决办法
9万
查看次数

Python中是否有B树数据库或框架?

我听说B-Tree数据库比Hash表更快,所以我想到为我的项目使用B-Tree数据库.python中是否存在允许我们使用此类数据结构的现有框架,还是我必须从头开始编写代码?

python b-tree

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

python insert vs append

我已经编写了基本的python片段,首先在列表中插入值然后反转它们.我发现insert和append方法之间的执行速度差异很大.

小片1:

L = []
for i in range(10**5):
 L.append(i)
L.reverse()
Run Code Online (Sandbox Code Playgroud)

执行此操作所需的时间:

real    0m0.070s
user    0m0.064s
sys         0m0.008s
Run Code Online (Sandbox Code Playgroud)

摘录2:

l = []
for i in range(10**5):
 l.insert(0,i)
Run Code Online (Sandbox Code Playgroud)

执行时间:

real    0m5.645s
user    0m5.516s
sys         0m0.020s
Run Code Online (Sandbox Code Playgroud)

我希望代码片段2的性能比snippet1好得多,因为我之前通过插入数字直接执行反向操作.但是,所用的时间不然.我无法理解为什么后一种方法需要更多时间来执行,即使该方法看起来更优雅.有没有人对此有任何解释?

python

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

扫雷一代背后的算法是什么?

好吧,我已经通过许多网站教授如何解决它,但想知道如何创建它.我对它的编码方面不感兴趣,但想了解更多关于它背后的算法.例如,当网格生成10个左右时,我会使用任何随机函数在网格上分布自己,但是我又如何设置与之关联的数字并决定打开哪个框?我无法构建任何通用算法,我将如何做到这一点.

algorithm minesweeper

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

如何使用非阻塞IO写入文件?

我想在Python中使用非阻塞方法写入文件.在一些谷歌上,我发现语言支持fcntl这样做,但实现相同的方法对我来说不是很清楚.

这是代码片段(我不知道我哪里出错了):

import os, fcntl
nf = fcntl.fcntl(0,fcntl.F_UNCLK)
fcntl.fcntl(0,fcntl.F_SETFL , nf | os.O_NONBLOCK )
nf = open ("test.txt", 'a') 
nf.write ( " sample text \n")
Run Code Online (Sandbox Code Playgroud)

这是对文件执行非阻塞IO操作的正确方法吗?我对此表示怀疑.另外,你能否在Python中建议任何其他允许我这样做的模块?

python file-io nonblocking

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

如何从给定文件中读取矩阵?

我有一个文本文件,其中包含N*M维度的矩阵.

例如,input.txt文件包含以下内容:

0,0,0,0,0,0,0,0,0,0
0,0,0,0,0,0,0,0,0,0
0,0,0,0,0,0,0,0,0,0
0,0,0,0,0,0,0,0,0,0
0,0,0,0,0,0,0,0,0,0
0,0,0,0,0,0,0,0,0,0
0,0,2,1,0,2,0,0,0,0
0,0,2,1,1,2,2,0,0,1
0,0,1,2,2,1,1,0,0,2
1,0,1,1,1,2,1,0,2,1
Run Code Online (Sandbox Code Playgroud)

我需要编写python脚本,我可以在其中导入矩阵.

我目前的python脚本是:

f = open ( 'input.txt' , 'r')
l = []
l = [ line.split() for line in f]
print l
Run Code Online (Sandbox Code Playgroud)

输出列表是这样的

[['0,0,0,0,0,0,0,0,0,0'], ['0,0,0,0,0,0,0,0,0,0'], ['0,0,0,0,0,0,0,0,0,0'],
 ['0,0,0,0,0,0,0,0,0,0'], ['0,0,0,0,0,0,0,0,0,0'], ['0,0,0,0,0,0,0,0,0,0'],
 ['0,0,2,1,0,2,0,0,0,0'], ['0,0,2,1,1,2,2,0,0,1'], ['0,0,1,2,2,1,1,0,0,2'],
 ['1,0,1,1,1,2,1,0,2,1']]
Run Code Online (Sandbox Code Playgroud)

我需要以int形式获取值.如果我尝试输入强制转换,则会抛出错误.

python file-io

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

通过表格在Flask上发布数据给出400 Bad Request

我试图通过我的前端发布数据,烧瓶应用程序抛出了400个错误的请求.但是如果我使用Curl调用它也一样,它似乎工作正常.我不知道我在表格中缺少什么.

以下是我的表格代码

<script>
function sub() {
    console.log('sub function');
    $("#fquery").submit();
}
</script>
<form id="form1" action="/final" method="post">
 <input id='query' type="text">
  <button type="submit" onClick='sub()'>Submit &raquo;</button>
</form>
Run Code Online (Sandbox Code Playgroud)

在服务器端:

@app.route('/final',methods=['POST','GET'])
def message():
    if request.method == 'POST':
        app.logger.debug(" entered message function"+ request.form['query'])
        q = request.form['query']
    return render_template('final.html',query=q,result="Core_Table Output")
Run Code Online (Sandbox Code Playgroud)

服务器端对我来说似乎很好.因为我收到卷曲请求的回复

curl http://localhost:8000/final -d "query=select starct st blah blah" -X POST -v
*   Trying 127.0.0.1... connected
> POST /gc HTTP/1.1
> User-Agent: curl/7.22.0 (i686-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 libidn/1.23 librtmp/2.3
> Host: localhost:8000
> Accept: */*
> Content-Length: 41 …
Run Code Online (Sandbox Code Playgroud)

html javascript python http flask

10
推荐指数
1
解决办法
3万
查看次数

Borland,GCC和MinGW编译器有什么区别?

我当然在中级编程了一段时间.我一直在这些不同的编译器中执行相同的代码(主要是GCC和MinGW),但我无法弄清楚这些编译器之间的区别.我的意思是一个人比另一个人更好?或是什么让他们与众不同?您是否有某些特殊需求可能需要使用GCC,而其他人可能需要使用MinGW?

c compiler-construction

9
推荐指数
2
解决办法
5658
查看次数