小编Fri*_*ias的帖子

使用Python将字符串转换为JSON

我对Python中的JSON有点困惑.对我来说,它看起来像是一本字典,因此我试图这样做:

{
    "glossary":
    {
        "title": "example glossary",
        "GlossDiv":
        {
            "title": "S",
            "GlossList":
            {
                "GlossEntry":
                {
                    "ID": "SGML",
                    "SortAs": "SGML",
                    "GlossTerm": "Standard Generalized Markup Language",
                    "Acronym": "SGML",
                    "Abbrev": "ISO 8879:1986",
                    "GlossDef":
                    {
                        "para": "A meta-markup language, used to create markup languages such as DocBook.",
                        "GlossSeeAlso": ["GML", "XML"]
                    },
                    "GlossSee": "markup"
                }
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

但是当我打印dict(json)时,它会出错.

如何将此字符串转换为结构,然后调用json ["title"]以获取"示例词汇表"?

python string json

375
推荐指数
4
解决办法
71万
查看次数

在Python中获取异常值

如果我有那个代码:

try:
    some_method()
except Exception, e:
Run Code Online (Sandbox Code Playgroud)

如何获得此Exception值(我的意思是字符串表示)?

谢谢

python exception

222
推荐指数
6
解决办法
22万
查看次数

TypeError:unhashable type:'dict',当dict用作另一个dict的键时

我有这段代码:

for element in json[referenceElement].keys():
Run Code Online (Sandbox Code Playgroud)

当我运行该代码时,我收到此错误:

TypeError:不可用类型:'dict'

导致该错误的原因是什么,我该怎么做才能解决?

python hash json

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

我如何强制自制程序重新编译?

我正在尝试在Mac OS X 10.9上安装wxWidgets.它已经安装,但我遇到了这里描述的问题.有人建议添加ENV.append_to_cflags "-stdlib=libc++".我做了,但我无法重新编译代码.

$ brew install wxmac
Warning: wxmac-3.0.0 already installed
$ brew edit wxmac
=> ok, modifications done, now I want to recompile and reinstall
$ brew uninstall wxmac
Uninstalling /usr/local/Cellar/wxmac/3.0.0...
$ brew install wxmac
==> Downloading https://downloads.sf.net/project/machomebrew/Bottles/wxmac-    3.0.0.mavericks.bottle.2.tar.gz
Already downloaded: /Library/Caches/Homebrew/wxmac-3.0.0.mavericks.bottle.2.tar.gz
==> Pouring wxmac-3.0.0.mavericks.bottle.2.tar.gz
  /usr/local/Cellar/wxmac/3.0.0: 775 files, 41M
Run Code Online (Sandbox Code Playgroud)

我如何强制自制程序重新编译?

homebrew

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

隐藏密码的最佳方法是什么?

我有一个连接到数据库的Python脚本.显然,我需要密码.我需要把它隐藏在某个地方.

我的问题是这个代码存储在一个文件夹中,每个有权访问服务器的人都可以查看.所以,如果我把这个密码写在一个文件中加密,那么在代码中就会出现发现它的关键,人们可以把它弄清楚.

所以,如果有人有想法,请

python passwords

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

WrappedNative原型对象的非法操作

如果这个答案看起来与本网站的其他问题相似,我很抱歉,但我找不到我需要的东西.

我有这个代码:

    $.ajax({
            url: '../../cgi-bin/executeQuery',
            type: 'GET',
            data: ({siid:5185,of:"xmlWithColID"}),
            dataType: 'xml',
            success: function(xmlR){
                    try{
                            $.ajax({
                                    url: '../../cgi-bin/authList.py',
                                    type: 'GET',
                                    data: ({xmlToFormat:xmlR,service:"paperList"}),
                                    dataType: 'xml',
                                    success: function(data){
                                            try{
                                                    displayResult(data,loadXMLDoc("js/authList/paperTableStyle.xsl"),"divPaperTable");
                                            }catch(e){
                                                    console.log(e.message);
                                            }
                                    },
                                    complete: function(XMLHttpRequest, textStatus){
                                            $('#divMakingAuthorList').addClass('secondary');
                                            $('#divMakingAuthorList').hide();
                                    }
                            });
                    }catch(e){
                            console.log(e.message);
                    }
            }
    });
Run Code Online (Sandbox Code Playgroud)

这给了我FF中的以下错误:"对WrappedNative原型对象的非法操作".

当我删除代码的"成功"部分时,错误消息仍然存在.之后,我删除了"完整"的parte,错误信息也在那里.但是,当我删除以下代码行时:data:({xmlToFormat:xmlR,service:"paperList"}),消息消失了.

但我不明白原因.是否可以将"xml"作为ajax事件中的数据发送到我的CGI?

谢谢

xml ajax jquery cgi

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

编写一个javascript库

我想写一个JS库并像这样处理它:

var c1 = Module.Class();
c1.init();
var c1 = Module.Class();
c2.init();
Run Code Online (Sandbox Code Playgroud)

当然,c1和c2不能共享相同的变量.我想我知道如何用对象做这个,它会是:

var Module = {

     Class = {

         init = function(){
             ...
         }

     }

}
Run Code Online (Sandbox Code Playgroud)

但问题是,如果我以这种方式编写,我不能拥有多个Class实例.所以我试图用功能实现同样的功能,但我认为我做得不对.

(function() {

    var Module;
    window.Module = Module = {};

    function Class( i ) {
        //How can "this" refer to Class instead of Module?
        this.initial = i;
    }

    Class.prototype.execute = function() {
        ...
    }

    //Public
    Module.Class = Class;

})();
Run Code Online (Sandbox Code Playgroud)

如果可能的话,我没有任何线索,但我接受其他方式的建议来创建这个模块.我不知道它是否也相关,但我在这个库中使用jQuery.

javascript object module-pattern

8
推荐指数
1
解决办法
2500
查看次数

如何从命令行或从Web运行程序?

我有一个python脚本,我想知道请求是来自Web还是命令行.我怎样才能做到这一点?

python command-line cgi

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

为什么JSON.parse不起作用?

我将dataType设置为'text',因为我不想让Jquery自动解析我的JSON.我的代码如下:

var membId = '5';
$('#submitNewDescription').live('click',function(){
    //An ajax request is made to update the DB
    $.ajax({
        url: '../../cgi-bin/qualification.py',
        type: 'POST',
        data: ({newDescription:$('#newDescription').val(),id:membId}),
        dataType: 'text',
        cache: 'false',
        success: function(data){
            json = JSON.parse(data);
            console.log(data);
            console.log(json);
        }
    });
});
Run Code Online (Sandbox Code Playgroud)

它在两个console.log命令中返回字符串:{"error":["ORA-01031权限不足"]}.这意味着解析不起作用,因为它不返回JavaScript对象.JSONLint对我说这是一个有效的JSON.

任何人都知道发生了什么?

谢谢

编辑

我可以设置'json',这不是问题.问题是JSON.parse和$ .parseJSON应该可以工作.由于它们不是,我将'dataType'更改为'json',但返回相同的字符串.我不知道发生了什么.

javascript json

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

使用shell脚本或python检查目录内容是否已更改

我有一个程序,可以在特定目录中创建文件.当这些文件准备好后,我运行Latex来生成.pdf文件.所以,我的问题是,我如何使用这个目录更改作为触发器来调用Latex,使用shell脚本或python脚本?

最好的祝福

python shell latex

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

'module'对象没有'FieldStorage'属性

这对我来说没有意义,因为代码非常简单,文档中存在"FieldStorage".

#!/usr/bin/env python
print 'Content-type: text/html'
print
import cgi

def Main():
    form = cgi.FieldStorage()
    print '<html>'
    print '<body>'
    print 'ola'
    print '</body>'
    print '</html>'

if __name__ == '__main__':
    Main()
Run Code Online (Sandbox Code Playgroud)

python cgi

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

Click事件在jQuery插件中无法正常工作

我正在写一个jQuery插件,但我遇到了一个问题:

我的HTML元素

<a id="trac"></a>
Run Code Online (Sandbox Code Playgroud)

我的JS调用插件

$('#trac').myplugin();
Run Code Online (Sandbox Code Playgroud)

我的插件

$.fn.myplugin = function(){
    var $root;
    return this.each(function(){
        $root = $(this);
        $root.live('click',function(){
            console.log('here');
        });
    });
}
Run Code Online (Sandbox Code Playgroud)

碰巧"这里"永远不会显示.但如果我用...

 $('#trac').live('click',function(){
     console.log('here');
 });
Run Code Online (Sandbox Code Playgroud)

...显示"此处".我不明白为什么会发生这种情况,因为$ root和$('#trac')是完全相同的jQuery对象.

我该如何解决?

谢谢!

javascript jquery click jquery-plugins

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

仅启用选择框中的第一个选项

我的页面中有一些"选择框",我不想让用户选择任何选项,但第一个(请不要问我为什么).我无法使用'readonly'属性更改'input',我也无法删除选项.我很抱歉这些限制,但必须这样.

我试过这个:

 $('select').attr('disabled',true);
Run Code Online (Sandbox Code Playgroud)

但碰巧我不想"松散"这个价值.我有一个使用这些值的ajax调用,当我禁用它时,值'不存在'了.

我也试过这个:

 $('select').click(function(){
      return false;
 });
Run Code Online (Sandbox Code Playgroud)

但没有成功.

html jquery html-select jquery-selectors

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