问题列表 - 第11866页

Python类与模块属性

我有兴趣听一些关于Python中类属性的讨论.例如,类属性的一个很好的用例是什么?在大多数情况下,我无法想出一个类属性比使用模块级属性更可取的情况.如果这是真的,那么为什么要将它们放在一边?

我遇到的问题是,错误地破坏类属性值几乎太容易了,然后你的"全局"值变成了本地实例属性.

请随意评论您将如何处理以下情况:

  1. 类和/或子类使用的常量值.这可能包括永不改变的"幻数"字典键或列表索引,但可能需要一次性初始化.
  2. 默认类属性,在极少数情况下为类的特殊实例更新.
  3. 全局数据结构用于表示在所有实例之间共享的类的内部状态.
  4. 初始化许多默认属性的类,不受构造函数参数的影响.

一些相关帖子:
类和实例属性之间的差异

python attributes class-design module

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

如何在emacs上通过"Mx customize"设置变量注释?

当我设置变量时M-x customize,值将存储在我的.emacs文件中这个自动生成的按字母排序的大型列表中.

问题是我想记录为什么我选择特定值而不是特定变量的默认值.如果我通过在自动生成的列表中添加elisp注释来实现这一点,那么下次我自定义另一个变量时它们就会被破坏.

有没有办法Custom保持我的评论,还是有其他标准的方法来注释这个?

emacs customization comments editor dot-emacs

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

非常差的boost :: lexical_cast性能

Windows XP SP3.Core 2 Duo 2.0 GHz.我发现boost :: lexical_cast性能非常慢.想找出加速代码的方法.在visual c ++ 2008上使用/ O2优化并与java 1.6和python 2.6.2进行比较我看到以下结果.

整数铸造:

c++: 
std::string s ;
for(int i = 0; i < 10000000; ++i)
{
    s = boost::lexical_cast<string>(i);
}

java:
String s = new String();
for(int i = 0; i < 10000000; ++i)
{
    s = new Integer(i).toString();
}

python:
for i in xrange(1,10000000):
    s = str(i)
Run Code Online (Sandbox Code Playgroud)

我看到的时间是

c ++:6700毫秒

java:1178毫秒

python:6702毫秒

c ++和python一样慢,比java快6倍.

双铸:

c++:
std::string s ;
for(int i = 0; i < 10000000; …
Run Code Online (Sandbox Code Playgroud)

c++ boost lexical-cast

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

此页突出显示哪些编程错误?

http://dspace.dial.pipex.com/town/green/gfd34/art/bloopers.html

第一个似乎很简单;

return strcpy(malloc(strlen(s)), s);
Run Code Online (Sandbox Code Playgroud)

malloc可能会返回null,并strcpy可能尝试将数据复制到内存地址0.或者s可能是指向字符串(而不是数组)malloc的指针,并且只会为指针分配足够的空间,并尝试将字符串复制到其中.(我认为).

那第二个怎么样?

当他写下ch = toupper(ch)时,他没有给无符号字符添加ch,真是太遗憾了;

你为什么要投chunsigned char你写的ch = toUpper(ch);

c

4
推荐指数
1
解决办法
280
查看次数

没有行选择mysql php时显示消息

我的代码看起来像这样:

$result = mysql_query("SELECT * FROM `picdb` WHERE `picid` = '$picid' ") or trigger_error(mysql_error()); 
while($row = mysql_fetch_array($result)){ 
foreach($row AS $key => $value) { $row[$key] = stripslashes($value); } 
Run Code Online (Sandbox Code Playgroud)

问题是,当没有要选择的行时,没有任何反应,我的$ row数组为空.

当没有行与选择匹配时,我如何能够显示"没有找到行"的消息?

php mysql

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

实时/高分辨率股票API?

我希望得到一个API(希望是平台不可知的一个),它允许我检索实时(或接近它)股票价格/交易量(希望如此).

我不是一个专业的交易员,买不起任何真正昂贵的东西(虽然我愿意为这样的服务支付一个月的费用).我正在寻求监控大约500股(SP500)开始.

有人有什么建议吗?我不想使用类似谷歌的东西,因为我实际上是在窃取大量带宽,并且可能因为滥用服务而被阻止.

stocks stockquotes

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

CakePHP安装的索引页是否有默认控制器?

我刚刚成功安装了CakePHP,我看到我可以编辑home.ctp视图,但索引页面是否有默认控制器?

To change the content of this page, create: APP/views/pages/home.ctp.
To change its layout, create: APP/views/layouts/default.ctp.
You can also add some CSS styles for your pages at: APP/webroot/css.
Run Code Online (Sandbox Code Playgroud)

cakephp

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

将lambda绑定到键时出现"错误的类型参数:commandp"错误

我在这里得到一个"错误的类型参数:commandp,(lambda nil(forward-line 5))".

(global-set-key [?\M-n] (lambda () (forward-line 5)))
Run Code Online (Sandbox Code Playgroud)

错误是什么?我很确定这很简单,我错过了一些明显的东西.

emacs elisp

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

使用参数处理FOP

HI,我想使用FOP准备一个用于打印的XML文档(ps/pdf).是否可以将参数发送到FOP以进行xsl处理器中存在的条件格式化

XSL:

<xsl:param name="isDuplicate">no</xsl:param>
....
<xsl:if test="$isDuplicate='yes'">
    <h2 align="center">Copy</h2>
</xsl:if>
....
Run Code Online (Sandbox Code Playgroud)

xslt xsl-fo apache-fop

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

理解Java try/catch

我正在为学校编写一个迷你搜索引擎的应用程序.在执行时,它将包含为args的文本文件的内容编入索引.我之前没有使用过trycatch方法,我们刚刚将这段代码作为包含在我们的程序中:

Scanner inputFile = null;
try {
    inputFile = new Scanner(new File("dog.txt"));
} catch (FileNotFoundException fe) {
    System.out.println("File not found!");
}
Run Code Online (Sandbox Code Playgroud)

我创建了一个循环遍历args的方法,并为找到的每个唯一单词向数组添加一个新对象.问题是,catch每当我运行应用程序时,该方法似乎仍然执行,我无法解决原因.这是输出:

dog.txt被索引...找不到文件!
cat.txt被索引...找不到文件!

我已经包含了以下方法.如果有人感冒可能会指出我哪里出错了,那就太好了.

static void createIndex(String[] args) {
    for(int i = 0; i < args.length; i++) {
        Scanner inputFile = null;
        try {
            System.out.print((args[i]) + " being indexed ... ");
            inputFile = new Scanner(new File(args[i])); 
            while(inputFile.hasNext()) {
                boolean isUnique = true;
                String newWord = inputFile.next().trim().toLowerCase();
                for(int j = 0; j < uniqueWords; …
Run Code Online (Sandbox Code Playgroud)

java

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