这真的是几个问题:
有没有理由argparse使用命名空间而不是字典?
假设我有一堂课__init__(self, init_method, *args).该init_method参数告诉init_function我想要初始化类的方式,而arg参数给出了init所需的所有参数.对于不同的方法,参数可能不同.我应该使用字典还是命名空间?
假设我使用命名空间,如何将命名空间传递给__init__()?
这是一个示例代码:
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是一个有效的论点.
例如,为什么这有效?
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?的值?
我有这个代码:
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)
这是一个坏主意吗?有没有更好的方法来做到这一点?
你有一个形状数组(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) 它的默认值与其他东西相同似乎要好得多.那么,有没有办法做到这一点?它与任何命令冲突吗?
让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循环的情况下完成它?
假设我有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)