这个脚本有什么问题吗?
if [ grep -q "#<filter>" /etc/hosts ] && [ grep -q "#</filter>" /etc/hosts ] ; then
echo "exist"
fi
Run Code Online (Sandbox Code Playgroud)
它显示的错误是:
[: too many arguments
Run Code Online (Sandbox Code Playgroud) 首先,我是python的新手,我实际上是在搜索我的问题,但实例很难理解.
这是我的作业; 我需要一个函数,它接受两个函数作为参数,并返回两个函数的结果是否相同?基本上,它将给出TRUE为FALSE.
为此,我写道:
def f(x,y,z):
k=x(*z)
l=y(*z)
return k == l
Run Code Online (Sandbox Code Playgroud)
我为单个函数编写的previos代码正在工作,但当我修改它为上面的两个函数时,它给出如下错误:
import math
>>> f(math.sqrt,math.cos,5)
Traceback (most recent call last):
File "<pyshell#56>", line 1, in <module>
f(math.sqrt,math.cos,5)
File "D:/Users/karabulut-ug/Desktop/yalanmakinesi.py", line 2, in f
k=x(*z)
TypeError: sqrt() argument after * must be a sequence
>>>
Run Code Online (Sandbox Code Playgroud)
我无法弄清楚,因为错误提供功能通常不需要序列.所以我不认为这是有道理的:)任何帮助表示赞赏..谢谢:)
我对如何在子类中创建方法感到困惑.我正用这个撞在砖墙上,甚至不确定如何说出这个问题.
import java.io.*;
public class A {
public double method1(double x, double y) { return 1.0; }
}
class B extends A {
//subclass method to be placed after this line
}
Run Code Online (Sandbox Code Playgroud)
public double method1(double x, double y) { ... }public int method1(double x, double y) { ... }public double method1(int x, int y) { .... }public int method1(double x, double y, double z) { ... }以下哪种方法在子类中是合法的,为什么?
在函数式语言中,评估函数的参数应该没有意义.
然而,即使是最简单的程序也可能不是很有用.这里代码读取两个整数并将其中一个引入其他整数:
let pwr x y =
let rec pwrx = function 0 -> 1 | y -> x * pwrx (y - 1)
in pwrx y;;
print_int (pwr (read_int ()) (read_int ()));;
Run Code Online (Sandbox Code Playgroud)
该代码,很明显,首先读取第二个参数:如果5和4被输入,结果是1024.
我认为问题在于错误处理语言而缺乏对其意识形态的理解.我该如何正确地写这些东西?在调用函数之前,我应该在单独的行中读取两个值吗?
let x = read_int();;
let y = read_int();;
print_int (pwr x y);;
Run Code Online (Sandbox Code Playgroud)
它有效,但看起来有点开销 - 不是吗?
错误是:
TypeError: kernel() takes exactly 3 arguments (4 given)
Run Code Online (Sandbox Code Playgroud)
相应的代码是:
K[i][j] = self.kernel(self, B[i], C[j])
...
def kernel(self, P, Q)
Run Code Online (Sandbox Code Playgroud)
以下行的结果是:
print self: object at 0x....
print len((self, B[i], C[j])): 3
print len((B[i])): 4
print len((C[j])): 4
Run Code Online (Sandbox Code Playgroud)
为什么会说4个参数,我该如何解决呢?
我正在创建一个动态表单活动,我得到了如何从db创建表单的说明.活动基本上只是滚动问题列表并查看它们的类型并添加它们.所以这是一个将视图添加为问题的活动.这一切都很好.我试图将响应/问题保留在特定问题类中,这些类只是一个基本问题的子类.
我遇到的问题是当我尝试添加相机"问题"以提示用户拍照时,我无法在视图中获得结果.我在视图中管理了启动活动,并将结果返回到问卷调查活动.活动不知道将其添加到哪个问题,因为它都是动态完成的.因此,我尝试通过问题ID作为相机意图中的额外内容,并在问卷调查活动中接收它,然后滚动查看它添加的问题,如果它是相同的,它会将图片添加到与之关联的问题中.
它添加问题的方式是通过一个视图组,只为每个视图组插入一个部分.
这是启动相机的相关部分(我也试过使用它而没有捆绑).这是BaseQuestion的子类,它只是linearlayout的子类:
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
Bundle bundle = new Bundle();
bundle.putInt("questionId", getQuestionId());
intent.putExtras(bundle);
intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(new File(
Environment.getExternalStorageDirectory(), "image.tmp")));
((Activity)getContext()).startActivityForResult(intent, TAKE_PHOTO);
Run Code Online (Sandbox Code Playgroud)
这是处理活动中结果的相关部分.
protected void onActivityResult(int requestCode, int resultCode,
Intent imageReturnedIntent) {
super.onActivityResult(requestCode, resultCode, imageReturnedIntent);
Bitmap image = null;
switch (requestCode)
{
case TAKE_PHOTO:
{
if (resultCode == RESULT_OK)
{
InputStream inputStream = null;
File file = new File(Environment.getExternalStorageDirectory(),
"image.tmp");
try {
inputStream = new FileInputStream(file);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
if (inputStream == …Run Code Online (Sandbox Code Playgroud) 在perl中所有sub的参数写入@_数组,如下所示:
call_any_sub($a,$b,$c);
sub call_any_sub {
my $s_a = shift;
my $s_b = shift;
my $s_c = shift;
}
Run Code Online (Sandbox Code Playgroud)
但是,如果我想将数组作为参数传递给sub,我应该使用:
call_any_sub(@data_array);
sub call_any_sub {
my @data = @_;
}
Run Code Online (Sandbox Code Playgroud)
而不是类似的:
call_any_sub(@data_array);
sub call_any_sub {
my @data = shift;
}
Run Code Online (Sandbox Code Playgroud)
那么,为什么@data_array会替换参数数组而不是写入(正如预期的那样)?
在Python 3.3.3中,当我尝试
def f(x,y=0):
z = x+y
return z
Run Code Online (Sandbox Code Playgroud)
它工作得很好.
但是,当我尝试
def f(x,y=x):
z = x+y
return z
Run Code Online (Sandbox Code Playgroud)
我得到NameError: name 'x' is not defined.
我知道我可以做到
def f(x,y=None):
y = x if y is None else y
z = x+y
return z
Run Code Online (Sandbox Code Playgroud)
.
是否有更简洁或更好的方法来获得理想的结果?
我试图编写一个函数,使R解释参数而不评估它们并将它们推入一个新的字符串.
这就是我到目前为止所拥有的.这非常难看,但最多可以工作5:
pl <- pasteliteral <-
function(v1='',v2='',v3='',v4='',v5='', sep="") {
stopifnot(v1!="")
# Sort up to 10 values
if (deparse(substitute(v1)!="")) {s<-deparse(substitute(v1))
if (deparse(substitute(v2)!="")) {s<-paste(s, deparse(substitute(v2)), sep=sep)
if (deparse(substitute(v3)!="")) {s<-paste(s, deparse(substitute(v3)), sep=sep)
if (deparse(substitute(v4)!="")) {s<-paste(s, deparse(substitute(v4)), sep=sep)
if (deparse(substitute(v5)!="")) {s<-paste(s, deparse(substitute(v5)), sep=sep)
}}}}}
s
}
pl(1,2,3,a,hello)
[1] "123ahello"
Run Code Online (Sandbox Code Playgroud) 请帮我找错,我的代码是
NSURL *url = [NSURL URLWithString: @"http://www.xxxx.com/xxxx_webservice/login.php?user=%@&pass=%@&format=json",Username,Password];
Run Code Online (Sandbox Code Playgroud)
