小编Jus*_*ard的帖子

你如何在Python中表达二进制文字?

如何用Python文字将整数表示为二进制数?

我很容易找到十六进制的答案:

>>> 0x12AF
4783
>>> 0x100
256
Run Code Online (Sandbox Code Playgroud)

和八进制:

>>> 01267
695
>>> 0100
64
Run Code Online (Sandbox Code Playgroud)

你如何使用文字在Python中表达二进制文件?


答案摘要

  • Python 2.5及更早版本:可以使用int('01010101111',2)文字来表示二进制文件,但不能用文字表达.
  • Python 2.5及更早版本:没有办法表达二进制文字.
  • Python 2.6 beta:您可以这样做:0b11001110B1100111.
  • Python 2.6 beta:也允许0o270O27(第二个字符是字母O)表示八进制.
  • Python 3.0 beta:与2.6相同,但不再允许027octals 的旧语法.

python syntax binary integer literals

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

教初学者编程的最佳方法是什么?

原始问题

我目前正在教我的兄弟去编程.他是一个初学者,但非常聪明.(而他实际上想学习).我注意到我们的一些会议陷入了细微的困境,我不觉得自己组织得很好.(但这篇文章的答案有很多帮助.)

我能做些什么来有效地教他?是否有一个逻辑顺序,我可以使用概念按概念运行?是否有复杂性我应该避免到以后?

我们使用的语言是Python,但欢迎任何语言的建议.


如何帮助

如果您有好的,请在答案中添加以下内容:

  • 初学者练习和项目创意
  • 教学初学者的资源
  • 截屏/博客文章/免费电子书
  • 打印适合初学者的书籍

请描述资源及其链接,以便我查看.我希望每个人都知道我一直在使用这些想法.您的提交内容将在此帖中汇总.


教学初学者的在线资源:


推荐用于教学初学者的打印书籍

python language-agnostic

324
推荐指数
12
解决办法
14万
查看次数

我应该将EJB3或Spring用于业务层吗?

我的团队正在开发一个带有Web前端的面向服务的新产品.在讨论我们将使用哪些技术时,我们决定运行JBoss应用程序服务器和Flex前端(可能使用Adobe AIR进行桌面部署),以及用于连接客户端和服务器的Web服务.

当涉及到我们的业务逻辑使用哪种服务器技术时,我们陷入了僵局.EJB3和Spring之间的争论很大,我们最关心的是可扩展性和性能,以及代码库的可维护性.

这是我的问题:

  1. 对于EJB3和Spring有什么争论?
    • 我可以期待哪些陷阱?
    • 我在哪里可以找到好的基准信息?

java performance spring scalability ejb-3.0

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

我的java代码有一个明显的错误.为什么要编译并运行?

public class HelloWorld {
    public static void main (String args[]){
        System.out.println ("Hello ");
        http://www.google.com
        System.out.println ("World!");
    }
}
Run Code Online (Sandbox Code Playgroud)

上面的代码只是编译和执行正常.为什么编译器没有报告任何错误?

java syntax

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

我该如何组织我的主ddl脚本

我目前正在为我们的数据库创建一个主ddl.从历史上看,我们使用备份/恢复来对数据库进行版本控制,而不是维护任何ddl脚本.架构非常大.

我目前的想法:

  • 将脚本分成几部分(可能在单独的脚本中):

    1. 表创建
    2. 添加索引
    3. 添加触发器
    4. 添加约束
  • 每个脚本都会被主脚本调用.

  • 我可能需要一个脚本暂时删除约束以进行测试
  • 架构中可能存在孤立表,我计划识别可疑表.

还有其他建议吗?

编辑:此外,如果有人知道自动化部分过程的好工具,我们正在使用MS SQL 2000(旧的,我知道).

sql sql-server schema ddl

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

python中的类的Lambda函数?

必须有一个简单的方法来做到这一点,但不知何故,我可以绕过它.我可以描述我想要的最好的方法是一个类的lambda函数.我有一个库,希望作为一个参数,使用一个未经实例化的类.然后它实例化类本身以继续工作.问题是我希望能够动态创建类的版本,传递给库,但我无法弄清楚如何做到这一点,因为库需要一个未实例化的版本.下面的代码描述了问题:

class Double:
    def run(self,x):
        return x*2

class Triple:
    def run(self,x):
        return x*3

class Multiply:
    def __init__(self,mult):
        self.mult = mult
    def run(self,x):
        return x*self.mult

class Library:
    def __init__(self,c):
        self.c = c()
    def Op(self,val):
        return self.c.run(val)

op1 = Double
op2 = Triple
#op3 = Multiply(5)

lib1 = Library(op1)
lib2 = Library(op2)
#lib3 = Library(op3)

print lib1.Op(2)
print lib2.Op(2)
#print lib3.Op(2)
Run Code Online (Sandbox Code Playgroud)

我不能使用通用的Multiply类,因为我必须首先实例化它,这会破坏库"AttributeError:Multiply instance has no call method".在不更改Library类的情况下,有没有办法可以做到这一点?

python lambda

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

如何将正则表达式绑定到emacs中的键组合?

对于上下文,我是一个emacs新手.我没有使用它很长时间,但已经越来越多地使用它(我非常喜欢它).我也很熟悉lisp,但不熟悉elisp.

我需要做的是将正则表达式绑定到键盘组合,因为我经常使用这个特定的正则表达式.

我一直在做什么:

M-C-s ^.*Table\(\(.*\n\)*?GO\)
Run Code Online (Sandbox Code Playgroud)

注意,我上面使用了换行符,但是我发现isearch-forward-regexp,你真的需要用\n正则表达式替换正则表达式C-q Q-j.这会插入一个文字换行符(不结束命令),这样我就可以在表达式中添加换行符并跨行匹配.

如何将其绑定到组合键?

我隐约明白我需要创建一个isearch-forward-regexp用表达式执行的elisp函数,但我对细节很模糊.我搜索了谷歌,发现大多数文档都有点令人困惑.

如何将正则表达式绑定到emacs中的键组合?


迈克斯通到目前为止得到了最好的答案 - 不完全是我想要的,但它适用于我需要的东西

编辑 - 这种方式有效,但在存储宏之后,当我以后再使用它时,我无法使用它C-x e.(即,如果我重新启动emacs然后键入M-x macro-name,然后C-x e,我在迷你缓冲区中收到一条消息,如'no last kbd macro'或类似的东西)


@Mike Stone - 感谢您提供的信息.我试过像这样创建一个宏:

C-x( M-C-s ^.*Table\(\(.*C-q C-J\)*?GO\) C-x)
Run Code Online (Sandbox Code Playgroud)

这创建了我的宏,但是当我执行我的宏时,我没有得到我使用时通常得到的相同突出显示isearch-forward-regexp.相反,它只是跳到表达式的下一个匹配结束.所以这并不适用于我需要的东西.有任何想法吗?

编辑:看起来我可以使用宏来做我想要的事情,我只需要在框外思考isearch-forward-regexp.我会尝试你的建议.

lisp regex emacs

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

为什么可用性评估方法很少使用?

在软件开发的历史中已经开发了许多可用性评估技术.但在我看来,他们很少在实践中使用.

为什么实际使用的可用性评估工具和方法不多?

或者他们使用的次数超过了我被引导相信的程度?

testing usability user-interface user-experience

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

应该使用哪个版本的flexmojos?

最近我将我的Adobe AIR项目重组为maven项目,这样我就可以连接到我的持续集成服务器了.我发现的大部分信息来自各种博客,这似乎是关于灵活事物的唯一方法.

然而,当我决定从哪个超级pom继承时,我发现有一些不同的人正在使用的不同的flexmojos超级pom.

以下是我发现的一些(其中每一个都被野外的一些例子使用)

各种超级poms之间有什么区别,哪个是事实上的标准?

apache-flex air maven-2 flexmojos

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

CheckStyle模块"NeedBraces"可以使用嵌套的if/else块吗?

我们使用CheckStyle来强制执行我们的样式标准.我们选择包含的样式规则之一是NeedBraces模块.

NeedBraces指定每块类型声明(如if,else,for)必须具有打开和关闭大括号.但是,据我所知,它没有完全正确地工作.

此示例将触发CheckStyle错误.

    if (true)
    {
        System.out.println("20");   
    }
    else
        System.out.println("30");
Run Code Online (Sandbox Code Playgroud)

因为else案例没有大括号.但是,下一个示例无法触发CheckStyle错误.

    if (true)
    {
        System.out.println("20");   
    }
    else
        if (true)
        {
            System.out.println("30");
        }
Run Code Online (Sandbox Code Playgroud)

这应该是失败的,因为else案例中缺少大括号,但checkstyle让它通过.在仔细检查文档后,我找不到任何原因导致其无法正常工作.

那么...... CheckStyle模块"NeedBraces"可以使用嵌套的if/else块吗? 有任何想法吗?


这个问题的答案引出了另一个问题:是否有规则将上述不良代码标记为违规?

java coding-style checkstyle

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