问题列表 - 第162086页

这两个Python语句有什么区别?

我正在深入研究WiringPi-Python for Python 的代码,我找到了几个像这样的块:

def wiringPiSetup():
  return _wiringpi2.wiringPiSetup()
wiringPiSetup = _wiringpi2.wiringPiSetup
Run Code Online (Sandbox Code Playgroud)

这对我来说有点令人费解,因为我觉得这个:

def wiringPiSetup():
  return _wiringpi2.wiringPiSetup()
Run Code Online (Sandbox Code Playgroud)

会产生与此完全相同的结果:

wiringPiSetup = _wiringpi2.wiringPiSetup
Run Code Online (Sandbox Code Playgroud)

我知道第一个是声明一个新函数,第二个是对原始函数的引用,但在测试中我发现它们完全等价.看这里:

>>> def a():
...     return 4
... 
>>> def a1():
...     return a()
... 
>>> a2 = a
>>> 
>>> a1()
4
>>> a2()
4
Run Code Online (Sandbox Code Playgroud)

那么,为什么WiringPi-Python在它们中任何一个都足够的时候放了?

BTW:

  • 我正在使用Python 2.7.3
  • 这是我看到的文件:这里

python swig python-2.7

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

子命令后允许argparse全局标志

我正在使用argparse构建一个带有子命令的命令:

mycommand [GLOBAL FLAGS]子命令[FLAGS]

我希望全局标志能够工作,无论它们是在子命令之前还是之后.有没有一个干净的方法来做这个不涉及重复代码?

例如:

  parser = argparse.ArgumentParser()
  subparsers = parser.add_subparsers(dest='subparser_name')

  parser.add_argument('--disable')    # This flag...

  sp = subparsers.add_parser('compile')
  sp.add_argument('zones', nargs='*')
  sp.add_argument('--disable')        # Is repeated...

  sp = subparsers.add_parser('launch')
  sp.add_argument('zones', nargs='*')
  sp.add_argument('--disable')        # over and over...
Run Code Online (Sandbox Code Playgroud)

我想为许多旗帜做这件事,所以一遍又一遍地重复自己似乎...... unpythonic.

python argparse

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

用于多个RESTFul服务的Swagger UI

我在这里阅读以下内容:

Swagger目前不包含从客户端或服务器角度支持多个API版本的建议 - 声明版本信息(规范和底层API实现).

我想知道的是如何配置swagger UI来显示多个服务的API,即驻留在不同服务器上的服务.我尝试在另一台服务器上配置swagger UI,但是我收到以下错误:

无法从服务器读取.它可能没有适当的访问控制原点设置.

我已经阅读了关于在服务器上启用CORS的内容,但是在我的情况下,由于服务在自由配置文件上运行,因此无效.

Swagger UI在WAS的本地运行的自由配置文件上配置,并且服务在不同的WAS实例上运行.

我要移动的方向是拥有多个服务的UI,但我认为这是一个合乎逻辑的起点.

swagger swagger-ui

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

ruby合并基于键的哈希值数组,并按键/值对的数量排序

我有这个哈希数组:

ah = [{"Date"=>"2014-03-17", "countdown 7"=>1}, {"Date"=>"2014-03-17", "voice 6"=>1},     
 {"Date"=>"2014-03-18", "voice 1"=>1}, {"Date"=>"2014-03-18", "voice 2"=>0},     
 {"Date"=>"2014-03-18", "voice 3"=>1}, {"Date"=>"2014-03-18", "voice 4"=>0},    
 {"Date"=>"2014-03-18", "voice 5"=>0}, {"Date"=>"2014-03-18", "voice 6"=>0},     
 {"Date"=>"2014-03-19", "voice 5"=>0}, {"Date"=>"2014-03-19", "voice 6"=>0},    
 {"Date"=>"2014-03-20", "countdown 5"=>1}, {"Date"=>"2014-03-20", "voice 7"=>0},     
 {"Date"=>"2014-03-20", "voice 6"=>0}]   
Run Code Online (Sandbox Code Playgroud)

我想根据键合并它:

ah = [{"Date"=>"2014-03-17", "countdown 7"=>1, "voice 6"=>1},      
 {"Date"=>"2014-03-18", "voice 1"=>1, "voice 2"=>0, "voice 3"=>1, "voice 4"=>0, "voice 5"=>0, "voice 6"=>0},       
 {"Date"=>"2014-03-19", "voice 5"=>0, "voice 6"=>0},       
 {"Date"=>"2014-03-20", "countdown 5"=>1, "voice 7"=>0, "voice 6"=>0}]         
Run Code Online (Sandbox Code Playgroud)

试过:

ah.inject { |all, h| …
Run Code Online (Sandbox Code Playgroud)

ruby arrays sorting hash

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

使用命名空间选择列作为XML

我需要从表中选择一些列作为XML,其中包含名称空间以及其他列.例如,我有以下表格布局:

ID  C1  X1C1  X1C2  X2C3
1   A   1     2     3
Run Code Online (Sandbox Code Playgroud)

查询应返回的内容是:

ID  C1  XmlData
1   A   <xmldata1>
2   A   <xmldata2>
Run Code Online (Sandbox Code Playgroud)

哪里<xmldata1>会:

<Root xmlns:xsd="w3.org/2001/XMLSchema" xmlns:xsi="w3.org/2001/XMLSchema-instance" xmlns:mst="microsoft.com/wsdl/types/">
  <Child attrib="C1">
    <ChildValue xsi:type="xsd:integer">1</ChildNode>
  </Child>
  <Child attrib="C2">
    <ChildNode xsi:type="xsd:integer">2</ChildNode>
  </Child>
</Root>
Run Code Online (Sandbox Code Playgroud)

并且<xmldata2>将是:

<Rootxmlns:xsd="w3.org/2001/XMLSchema" xmlns:xsi="w3.org/2001/XMLSchema-instance" xmlns:mst="microsoft.com/wsdl/types/">
  <Child attrib="C3">
    <ChildNode xsi:type="xsd:integer">3</ChildNode>
  </Child>
</Root>
Run Code Online (Sandbox Code Playgroud)

我有一个很好的参考如何从这个SO问题构建xml 但我无法放入名称空间.如果这是可能的怎么办?

编辑:我使用以下查询尝试获得所需的结果:选择1个ID,'A'C1,1个X1C1,2个X1C2,3个X2C3到#t

;with xmlnamespaces('w3.org/2001/XMLSchema' as xsd, 'w3.org/2001/XMLSchema-instance' as xsi, 'microsoft.com/wsdl/types/' as mst)
select ID, C1, (select (SELECT 'C1' "@attrib", 'xsd:integer' "ChildValue/@xsi:type",t.X1C1 as 'ChildValue' FOR XML PATH('Child'), …
Run Code Online (Sandbox Code Playgroud)

xml sql t-sql sql-server-2008-r2

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

编写一个自定义求和函数来对数字列表求和

我是 Python 新手,需要一些帮助来编写一个将列表作为参数的函数。

我希望用户能够输入数字列表(例如,[1,2,3,4,5]),然后让我的程序对列表的元素求和。但是,我想使用 for 循环对元素求和,而不仅仅是使用内置sum函数。

我的问题是我不知道如何告诉解释器用户正在输入列表。当我使用这段代码时:

  def sum(list):
Run Code Online (Sandbox Code Playgroud)

它不起作用,因为解释器只需要从 sum 中获取一个元素,但我想输入一个列表,而不仅仅是一个元素。我尝试使用 list.append(..),但无法让它按照我想要的方式工作。

感谢期待!

编辑:我正在寻找这样的东西(谢谢,“irrenhaus”):

def listsum(list):
    ret=0
    for i in list:
        ret += i
    return ret

# The test case:
print listsum([2,3,4])  # Should output 9.
Run Code Online (Sandbox Code Playgroud)

python loops for-loop

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

如何以隐身方式设置chrome开发人员工具的默认位置

当我打开一个新的隐身窗口并打开开发人员工具时,它总是停靠在底部:S

有什么办法可以将默认底座设置为右侧吗?或者是否有一些我可以用来改变码头位置的热键?

google-chrome incognito-mode

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

在您选择JTextArea之前,它不会显示

我的代码创建了一个基本的注册屏幕,但在JTextArea objTE1您选择文本的位置之前,它不会显示.

import java.awt.*;
import javax.swing.*;
public class SignUpScreen extends Frame
{
    SignUpScreen()
    {
        super("No Layout Manager");
        setLayout(null);
        setTitle("Sign Up");
        setSize(400,700);
        show();
    }
    public static void main(String[] args)
    {
        Frame objFrame;
        JTextArea objTE1;

        JCheckBox objCheckMail;
        JCheckBox objCheckEmail;
        JCheckBox objCheckPhone;

        Button objButtonFinish;
        Button objButtonCancel;

        TextField objEnterEmail;
        TextField objEnterAdress;
        TextField objEnterPhone;
        TextField objEnterUsername;
        TextField objEnterPassword;
        TextField objConfirmPassword;


        objFrame = new SignUpScreen();
        objTE1 = new JTextArea();
        objCheckMail = new JCheckBox("Mail Notifications");
        objCheckEmail = new JCheckBox("Email Notifications");
        objCheckPhone = new JCheckBox("Text Notifications"); …
Run Code Online (Sandbox Code Playgroud)

java swing jtextarea layout-manager null-layout-manager

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

从LLVM解析树重新生成源代码?

我很好奇是否有任何项目可以采用LLVM解析树并从中重新生成源代码.我特别想到C/C++.

c c++ llvm clang parse-tree

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

避免带有图案的吸气剂链

我正在制作一个游戏,你必须要保卫一座城堡.每个级别都由车道组成,敌人进来并攻击它.现在,城堡对于每个级别都是相同的,如果它在级别1中被破坏,它将在第2级"生成"具有相同的健康点.所以我所做的就是在游戏开始时创建一个城堡对象,并将其保留在游戏的其余部分.

这是一个说明我的"设计":

在此输入图像描述

现在,当敌人到达城堡并损坏它时,我的代码如下所示:

this.getLane().getLevel().getGame().getCastle().doDamage(1);
Run Code Online (Sandbox Code Playgroud)

哪个看起来不是很好.我一直在寻找一些设计模式来提出一个更清洁的解决方案,但我并没有找到一个,并且想知道是否有人有想法.

(我知道这个问题是关于链接吸气剂的问题:https: //stackoverflow.com/questions/8744668/java-getter-chaining-bad-or-good 但它并没有真正提出解决方案)

java design-patterns law-of-demeter

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