小编use*_*2pi的帖子

命名空间,argparse和用法

这真的是几个问题:

  1. 有没有理由argparse使用命名空间而不是字典?

  2. 假设我有一堂课__init__(self, init_method, *args).该init_method参数告诉init_function我想要初始化类的方式,而arg参数给出了init所需的所有参数.对于不同的方法,参数可能不同.我应该使用字典还是命名空间?

  3. 假设我使用命名空间,如何将命名空间传递给__init__()

python namespaces argparse

23
推荐指数
2
解决办法
9977
查看次数

在python中,如何在父解析器的参数中读取子分析器?

这是一个示例代码:

import argparse

parser=argparse.ArgumentParser()
parser.add_argument('-main_arg')
subparser=parser.add_subparser()
a=subparser.add_parser('run')
a.add_argument('required_sub_arg')
a.add_argument('arg_a')
b=subparser.add_parser('b')
parser.parse_args()
Run Code Online (Sandbox Code Playgroud)

-main_arg如果我进入,我希望它能读入program run required_sub_arg -main_arg -arg_a

现在,它不承认-main_arg是一个有效的论点.

python argparse

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

在python中,当您将内部定义的函数传递给其他函数时,它如何保留变量?

例如,为什么这有效?

def func1(func1var):
    def innerfunc(innerfuncvar):
        if func1var == 1:
             print innerfuncvar
        else:
             print 5
    func2(innerfunc)


def func2(function):
     function(9)
Run Code Online (Sandbox Code Playgroud)

innerfunc被调用时func2,它如何知道func1var?的值?

python function-pointers function

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

Python初始化

我有这个代码:

def __init__(self, a, b, c, d...):
   self.a = a
   self.b = b
   etc
Run Code Online (Sandbox Code Playgroud)

我想用以下代替它:

def __init__(self, a, b, c, d...):
   args=locals()
   for key in args:
     self.__dict__[key] = args[key]
Run Code Online (Sandbox Code Playgroud)

这是一个坏主意吗?有没有更好的方法来做到这一点?

python class init

5
推荐指数
2
解决办法
769
查看次数

在numpy中,将3维数组的第二维乘以1维数组的最快方法是什么?

你有一个形状数组(a,b,c),你想要将第二个维度乘以一个形状数组(b)

for循环可以工作,但是有更好的方法吗?

防爆.

A = np.array(shape=(a,b,c))
B = np.array(shape=(b))

for i in B.shape[0]:
    A[:,i,:]=A[:,i,:]*B[i]
Run Code Online (Sandbox Code Playgroud)

python arrays numpy multidimensional-array

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

在emacs中,如何更改默认的ctrl-c拷贝和ctrl-v贴吧?

它的默认值与其他东西相同似乎要好得多.那么,有没有办法做到这一点?它与任何命令冲突吗?

emacs

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

比较matlab中的单元格

让strCellArr成为4000*1的单元格数组.每个单元格都是一个字符串

什么是告诉每个单元格是否有长度为100的字符串的最快方法.

换句话说,我想要一些与之相同的东西

a= true;
For (i =0; i =length(strCellArr); i++)
    if length(strCellArr{i}) ~= 100
         a = false;
    end
end
Run Code Online (Sandbox Code Playgroud)

一个相关的问题:

我可以将数组转换为4000*100的字符数组

charArr = char(strCellArr);
Run Code Online (Sandbox Code Playgroud)

但是,这将在不包含100个字符的行中引入空格.因此,如果第34行只有30个字符.然后

charArr(34)(50)
Run Code Online (Sandbox Code Playgroud)

将返回一个空格.

在我的情况下(如A,T,C或G),如何检查每个字符只是特定字符.有没有办法在不使用for循环的情况下完成它?

arrays matlab

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

matlab中的字符串"交叉相关"

假设我有2个字符串:

AACCCGGAAATTTGGAATTTTCCCCAAATACG

CGATGATCGATGAATTTTAGCGGATACGATTC
Run Code Online (Sandbox Code Playgroud)

我想找到我应该多少移动第二个字符串,使其与第一个字符串最匹配.

有2例.第一个是我们假设字符串被缠绕,第二个是我们没有.

是否有一个matlab函数返回N个数组或2N + 1个值数组,以确定移位的字符串2与字符串1的相关程度?

如果没有,是否有更快/更简单的方法

result = zeroes(length, 1)
for i = 0:length-1
    result(i+1) = sum (str1 == circshift(str2, i));
end
Run Code Online (Sandbox Code Playgroud)

matlab cross-correlation

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