小编Tin*_*rus的帖子

是否可以通过网站控制手机上的摄像头灯?

是否可以通过网站控制手机上的摄像头灯?通过Chrome或Firefox说.我知道可以使用Android或iOS应用程序,许多手电筒应用程序都在那里.我知道可以通过getUserMedia系列功能控制摄像机.如果没有,有谁知道什么时候可用?

javascript mobile google-chrome

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

通过adb tcpip调试React Native

我正在尝试使用React-Native开发应用程序时将USB设备(使用USB OTG)连接到我的Android设备.经典地调试Android应用程序,一个使用USB调试模式通过adb连接,但由于我的USB端口用于我的USB OTG设备,这是不可能的.

我尝试使用该adb tcpip方法(如何通过TCP连接Android与ADB?)但这不起作用,因为我的设备找不到'开发服务器'.有没有人有这样的调试运气?

debugging android usb-otg react-native

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

包装同类Python对象

我正在寻找一种方法来收集同类对象,将它们包装在另一个对象中,但使包装对象具有与原始对象相同的API,并将相应的API调用转发给其对象成员。

class OriginalApi:
  def __init__(self):
    self.a = 1
    self.b = "bee"

  def do_something(self, new_a, new_b, put_them_together=None):
    self.a = new_a or self.a
    self.b = new_b or self.b

    if put_them_together is not None:
      self.b = "{}{}".format(self.a, self.b)

  # etc.

class WrappedApi:
  def __init__(self):
    self.example_1 = OriginalApi()
    self.example_2 = OriginalApi()
Run Code Online (Sandbox Code Playgroud)

已经考虑了一些可能的解决方案,但是这些解决方案还不够充分:

  • 重写整个API,为什么不呢?由于API相当大且正在扩展,因此还不够。必须在多个位置维护API是不现实的。

    代码示例:

    class WrappedApi:
      def __init__(self):
        self.example_1 = OriginalApi()
        self.example_2 = OriginalApi()
    
      def do_something(self, new_a, new_b, put_them_together=None):
        self.example_1.do_something(new_a, new_b, put_them_together)
        self.example_2.do_something(new_a, new_b, put_them_together)
    
    Run Code Online (Sandbox Code Playgroud)
  • 使用列表和for循环这将更改对象上的API。就是说,这是我无法找到更优雅的解决方案。在这种情况下,WrappedApi该类将不存在。

    代码示例:

    wrapped_apis = [OriginalApi(), …
    Run Code Online (Sandbox Code Playgroud)

python

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

如何在Python中指出多个未使用的值?

通常在Python中,应该使用an _来表示参数未使用.

def example_basic(unused):
   pass
Run Code Online (Sandbox Code Playgroud)

def example_basic(_):
   pass
Run Code Online (Sandbox Code Playgroud)

然后,如果有多个未使用的参数,_则不能使用多个s,因为它们会发生冲突,因此*_使用a:

def example_multiple(unused1, unused2):
   pass
Run Code Online (Sandbox Code Playgroud)

def example_multiple(*_):
   pass
Run Code Online (Sandbox Code Playgroud)

最后,如果有多个不相邻的参数未使用,应该怎么做?

def example_non_adjacent(unused1, used, unused2):
    return used
Run Code Online (Sandbox Code Playgroud)

使用多个_s仍然不起作用,并且使用*_不起作用,因为它们不相邻.

请注意,我非常希望更改API,但为了这个问题,让我们假设这是不可能的.有没有办法表明它被忽略而没有使用像# pylint: disable=unused-argumentPyLint或者我不知道PyCharm的东西?

编辑:

我发布了一个例子,这里需要这个

python pep8 pylint

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

禁用给定模块或目录的pylint消息

有没有办法duplicate-code只为测试文件禁用Pylint的消息?我们项目中的所有测试都是DAMP,因此重复的代码是设计的.我知道我们可以在# pylint: disable=duplicate-code整个测试过程中添加,但宁可添加一些规则,说明文件test/夹下的所有文件都会禁用此规则.有没有办法做到这一点?

更具体地说,我正在寻找与"运行两次"解决方案不同的东西(这是我已经重新开始的).

python unit-testing pylint

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

如何在收益中扩展元组?

我试图在yield语句中扩展一个元组,但我得到了一个SyntaxError.这甚至是可能的,还是*仅用于函数调用的运算符?

以下是一个示例:

class Inner(object):
    def __init__(self):
        self._vals = {'a': 1,
                      'b': 2,
                      'c': 3,
                      'd': 4}

    def __iter__(self):
        for key, val in self._vals.items():
            yield key, val

class Outer(object):
    def __init__(self):
        self._morevals = {"foo": Inner(),
                          "bar": Inner()}

    def __iter__(self):
        for key, moreval in self._morevals.items():
            for val in moreval:
                yield key, *val    # !!! <--- This is where the error is

object_under_test = Outer()

for outer_key, inner_key, inner_value in object_under_test:
    print("{} {} {}".format(outer_key, inner_key, inner_value))

    # Want:
    # …
Run Code Online (Sandbox Code Playgroud)

python yield generator python-3.x

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