小编won*_*ng2的帖子

如何在Linux上的python中从进程ID中获取用户名?

我想从Linux上的python中获取进程ID的用户名,所以我可以这样显示:

name    user name   pid
Chrome  wong2       123
Run Code Online (Sandbox Code Playgroud)

python linux process

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

如何定义一个带有相同参数并返回值作为给定函数的函数指针?

例如,我有一个功能foo:

int foo(int a, int b)
{
    return a + b;
}
Run Code Online (Sandbox Code Playgroud)

我可以定义一个函数指针:

int (*pfoo)(int, int);
Run Code Online (Sandbox Code Playgroud)

但是我怎么能在程序中动态地做到这一点?
我想要一个函数,它接受一个函数作为参数,并返回一个函数指针,它接受相同的参数并返回给定函数的值.
然后我可以像这样使用它:

void* pfoo = getFuncPtrFromFunc(foo);  
Run Code Online (Sandbox Code Playgroud)

上面的代码做了什么.

这可能吗?

c c++ function-pointers

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

如何在不转义字符串的情况下读取argv值?

我正在编写一个名为flac2m4a的python脚本,它调用ffmpeg将.flac文件转换为.m4a文件.核心计划是这样的:

cmd = "ffmpeg -i %s -acodec alac %s.m4a" % (sys.argv[1], sys.argv[1][:-5])
os.system(cmd)
Run Code Online (Sandbox Code Playgroud)

我可以像这样使用这个程序:

./flac2m4a path_to_the_song.flac  
Run Code Online (Sandbox Code Playgroud)

但是当我为他们名字中带有特殊字符的歌曲运行时:

./flac4m4a.py Justin\ Bieber\ -\ Never\ Say\ Never\ -\ The\ Remixes/01\ -\ Never\ Say\ Never\ \(feat.\ Jaden\ Smith\).flac
Run Code Online (Sandbox Code Playgroud)

在linux下,当我按Tab键自动完成时,特殊字符将被转义为a \,但是当我从中读取它时sys.argv[1],它们将被Python转换为普通字符串:

Justin Bieber - Never Say Never - The Remixes/01 - Never Say Never (feat. Jaden Smith).flac
Run Code Online (Sandbox Code Playgroud)

所以我只想知道如何argv[1]准确读取用户输入的内容(带有那些\)

python linux

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

我可以使用JavaScript(用户脚本)修改chrome:// extensions/page吗?

我想使用JavaScript为chrome://extensions/页面添加搜索栏,所以我创建了一个名为test.user.js的文件,并在其中编写脚本:

// ==UserScript==
// @name       chromeex
// @namespace  chromeex
// @version    v1.0
/* @reason
 * just a test
 * @end
 */
// @match     chrome://extensions/
//
// ==/UserScript==

(function(){
    alert("haha");
}());
Run Code Online (Sandbox Code Playgroud)

但是当我在Chrome中加载它时,它说无效标题,最后我发现它@match chrome://extensions/是导致错误的.有没有一个解决方案?

javascript google-chrome userscripts google-chrome-extension

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

在这种情况下使用发电机有什么好处?

我正在从这张幻灯片中学习Python的生成器:http://www.dabeaz.com/generators/Generators.pdf
其中有一个例子,可以这样描述:
你有一个名为的日志文件log.txt,写一个程序到观看它的内容,如果有新行添加,打印它们.两种解决方案

1. with generator:  

    import time

    def follow(thefile):
        while True:
            line = thefile.readline()
            if not line:
                time.sleep(0.1)
                continue
            yield line

    logfile = open("log.txt")
    loglines = follow(logfile)
    for line in loglines:
        print line


2. Without generator:  

    import time

    logfile = open("log.txt")

    while True:
        line = logfile.readline()
        if not line:
            time.sleep(0.1)
            continue
        print line
Run Code Online (Sandbox Code Playgroud)

在这里使用发电机有什么好处?

python generator

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

允许用户通过URL上传图像时应该注意什么?

我正在一个用户可以发布笔记的网站上工作.我正在考虑允许用户通过提供图像的URL来发布图像(即不通过表单上传).

但是,我已经了解到这可以用来做某种黑客攻击,例如,用户可以粘贴不是图像的网址,因此当页面加载时,将对该网址发出GET请求.
我想知道:
1.可以做些什么其他恶意事情,如何阻止它们?
2.有一种简单的方法(只使用JavaScript)来检查网址是否是图像?

javascript security get

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

单击按钮时,如何将页面的字体颜色变为绿色

例如,这是我的HTML代码:

?<p style="color:blue">?I'm Blue</p>
<p id="p_red">I'm Red?</p>
<p>?I'm default, black</p>
<input type="button" id="btn" value="Set color" />  
Run Code Online (Sandbox Code Playgroud)

CSS:

?#p_red{
    color: red;
}?  
Run Code Online (Sandbox Code Playgroud)

单击按钮时,我想将页面的字体颜色变为绿色:

document.getElementById("btn").onclick = function(){
    document.body.style.color = "green";
}?;?  
Run Code Online (Sandbox Code Playgroud)

但似乎只有默认的一个(黑色的)改变了,蓝色和红色的一个不起作用......
怎么能这样做?

在这里小提琴:http://jsfiddle.net/M5AQ4/

javascript css

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

如何在 Mac OS X 和 Linux 上加载 Cython 编译的 .so 文件?

我在 Mac OS X 下编译了一个module.pyx文件module.so,现在我可以将它用于:

from module import method1

然而,同样的.so文件在Linux上不起作用,我必须module.so在Linux下编译一个新的。

所以问题是,如何使用 Cython 编写跨平台(Mac 和 Linux)模块?

python linux macos cython

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

我应该使用 InnoDB 将主键添加到二级索引吗?

例如我有这个表:

| id | name | age |

id 是主键;

这是查询:

select id from table where age > 12 order by id desc

是否有必要附加id到索引,如:

KEY idx (age, id)

还是这个指数就够了?

KEY idx (age)

ps:我使用 INNODB 作为存储引擎。

mysql sql indexing

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

如何使用PIL(枕头)以任何语言绘制文本?

我正在使用Python PIL在背景图像上渲染用户输入的文本(我正在使用枕头)。

代码很简单:

draw = ImageDraw.Draw(im)
draw.text((x, y), text, font=font, fill=font_color)
Run Code Online (Sandbox Code Playgroud)

问题是,用户可以用任何语言输入,如何确定font要使用哪种语言?

ps:我知道我必须首先拥有字体文件,所以我搜索并找到了Google Noto,下载了所有字体,将它们放入/usr/local/share/fonts/,但是这些字体是按语言分开的,因此我仍然无法加载可以呈现所有字体的字体用户输入的文本。

python fonts python-imaging-library

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