标签: multiple-value

如何在Perl哈希表中存储多个值?

直到最近,我一直在使用相同的键将多个值存储到不同的哈希中,如下所示:

%boss = (
    "Allan"  => "George",
    "Bob"    => "George",
    "George" => "lisa" );

%status = (
    "Allan"  => "Contractor",
    "Bob"    => "Part-time",
    "George" => "Full-time" );
Run Code Online (Sandbox Code Playgroud)

然后我可以参考$boss("Bob"),$status("Bob")但如果每个键都有很多属性,这就变得笨拙,我不得不担心保持哈希同步.

有没有更好的方法在哈希中存储多个值?我可以将值存储为

        "Bob" => "George:Part-time"
Run Code Online (Sandbox Code Playgroud)

然后拆分拆分弦,但必须有一个更优雅的方式.

perl hash multiple-value perl-data-structures

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

具有单个键的多个值的Hashtable

我想在单个键中存储多个值,如:

HashTable obj = new HashTable();
obj.Add("1", "test");
obj.Add("1", "Test1");
Run Code Online (Sandbox Code Playgroud)

现在这会引发错误.

c# hashtable multiple-value

11
推荐指数
4
解决办法
4万
查看次数

从多个值python中获取Enum名称

我试图获得枚举的名称,给出其多个值之一:

class DType(Enum):
    float32 = ["f", 8]
    double64 = ["d", 9]
Run Code Online (Sandbox Code Playgroud)

当我试图得到一个值给它的名字时它起作用:

print DType["float32"].value[1]  # prints 8
print DType["float32"].value[0]  # prints f
Run Code Online (Sandbox Code Playgroud)

但是当我尝试从给定值中获取名称时,只会出现错误:

print DataType(8).name
print DataType("f").name
Run Code Online (Sandbox Code Playgroud)

提高ValueError("%s不是有效的%s"%(值,cls.名称))

ValueError:8不是有效的DataType

ValueError:f不是有效的DataType

有没有办法做到这一点?或者我使用了错误的数据结构?

python enums multiple-value

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

请解释一下lisp的多值绑定

我已经阅读了文档(几个不同版本!)但我无法理解我的头脑multiple-value-bind.

这就是我(我想)知道的:

  • 第一个参数是要绑定的变量列表.
  • 下一个参数是绑定到变量的值列表.
    • 我是对的,这2个列表的长度必须相同吗?
  • 最后一个参数(可选吗?)是一个代码体,可以使用新绑定的值对变量进行操作.

这肯定是文档读取的方式,它适合我正在阅读的代码,但不是非常紧随其后.当我尝试multiple-value-bind从头开始创建一个语句作为测试时,我遇到了麻烦.我最终得到这样的结果:

? (mulitple-value-bind (x y z) (values 11 22 33) (+ x y z)) ;; EDIT: contains typo
> Error: Unbound variable: Y
> While executing: CCL::CHEAP-EVAL-IN-ENVIRONMENT, in process Listener(7).
> Type cmd-/ to continue, cmd-. to abort, cmd-\ for a list of available restarts.
> If continued: Retry getting the value of Y.
> Type :? for other options.
1 > 
Run Code Online (Sandbox Code Playgroud)

(我有点希望输出符合66.)(如果重要的话,我正在使用Clozure-CL,尽管我不认为它应该.)

另外,我正在查看一些示例代码(试图理解Project Euler Problem 24),其内容如下: …

lisp common-lisp multiple-value

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

在 Go 中记录多个返回值

有没有一种惯用的方法来记录返回多个值的函数的结果?这不会编译:

import "log"
func returnPair() (int,int) {
    return 42, 24
}
func main() {
    log.Printf("Returned %v", returnPair())
}

prog.go:7: multiple-value returnPair() in single-value context
Run Code Online (Sandbox Code Playgroud)

UPD 摘要(特别感谢@rvigacio):

这是 Go 语法的一个特点:

func eat(args ...interface{}) {}

func eatWithSpice(spice string, args ...interface{}) {}

func main() {
    eat(returnPair()) // this works
    eatWithSpice("pepper", returnPair()) // this does not
}
Run Code Online (Sandbox Code Playgroud)

作为一种特殊情况,如果函数或方法 g 的返回值数量相等并且可单独分配给另一个函数或方法 f 的参数,则调用 f(g(parameters_of_g)) 将在绑定返回值后调用 f g 的参数按顺序传递给 f 的参数。f 的调用除了 g 的调用之外不能包含任何参数,并且 g 必须至少有一个返回值。如果 f 有一个最终的 ... 参数,则为它分配常规参数分配后保留的 g 的返回值。http://golang.org/ref/spec#Calls

logging multiple-value go

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

如何访问函数返回的多个值(例如,cl:parse-integer)?

我想从字符串中得到三个数字

(parse-integer "12 3 6" :start 0 :junk-allowed t)
12 ;
2
Run Code Online (Sandbox Code Playgroud)

现在这2也会返回,这是可以解析的数字.所以我现在可以给

(parse-integer "12 3 6" :start 2 :junk-allowed t)
3 ;
4
Run Code Online (Sandbox Code Playgroud)

但我怎么保存的价值24它返回.如果我setq是到一个变量只123存储?

lisp common-lisp multiple-value

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

从表行传递多个具有相同名称的请求参数

我有一个带复选框的表,用户可以检查并删除表中的那一行.我有一切工作,但如果用户检查两个框,它只检索表上的第一个.

<tr>
  <td><input type="checkbox" name="id" value="${user.id}" /></td>
  <td><c:out value="${user.name}" /></td>
  <td><c:out value="${user.email}" /></td>
</tr>
Run Code Online (Sandbox Code Playgroud)

这只是我的HTML的一个例子.这是我的servlet的一部分.

String id = request.getParameter("id");
Run Code Online (Sandbox Code Playgroud)

所以,再次,我可以选择第一个值,但我无法在同一个表上删除多个行.有没有我可以使用的功能或类似的东西?谢谢!

jsp servlets multiple-value http-request-parameters

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

如何将多个变量从python返回到bash

我有一个调用python脚本的bash脚本.起初我只是返回一个变量,这很好,但现在我被告知返回两个变量,我想知道是否有一个简洁的方法来返回多个变量.

archiveID=$(python glacier_upload.py $archive_file_name $CURRENTVAULT)
Run Code Online (Sandbox Code Playgroud)

我是用bash打电话的

print archive_id['ArchiveId']
archive_id['ArchiveId']
Run Code Online (Sandbox Code Playgroud)

这会将归档ID返回给bash脚本

通常我知道你可以在python中使用return语句来返回多个变量,但是它只是一个脚本,就像我发现返回变量一样.我可以使它成为一个被调用的函数,但即便如此,我将如何收到我将要传回的多个变量?

python bash scripting return multiple-value

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

Racket中多个值和普通元组之间的区别?

valueslistcons在Racket或Scheme 之间有什么区别?什么时候使用一个比另一个好?例如,如果quotient/remainder返回(cons _ _)而不是(values _ _)

scheme tuples multiple-value cons racket

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

TypeError:errorbar()为关键字参数“ yerr”获得了多个值

我正在尝试通过python用平均值和标准偏差数组绘制误差线,如下所示:

p11 = np.genfromtxt(filn1,delimiter="",usecols=0,dtype=None)
p12 = np.genfromtxt(filn3,delimiter="",usecols=0,dtype=None) 
s11 = np.genfromtxt(filn2,delimiter="",usecols=0,dtype=None)
s12 = np.genfromtxt(filn4,delimiter="",usecols=0,dtype=None)
F1= np.genfromtxt(filn6,delimiter="",usecols=0,dtype=None)
F2= np.genfromtxt(filn7,delimiter="",usecols=0,dtype=None)
yerr1 =0.5*s11
yerr2 = 0.5*s12
plt.errorbar(F1,p11,'r',yerr=yerr1,lw=3,label='Summer')
plt.errorbar(F2,p12,'b',yerr=yerr2,lw=3,label='Winter')
Run Code Online (Sandbox Code Playgroud)

在此,p11和p12是平均值数组,而s11和s12是相应的标准差数组。这段代码运行良好,但是现在导致了:

TypeError: errorbar() got multiple values for keyword argument 'yerr'
Run Code Online (Sandbox Code Playgroud)

任何想法或提示将不胜感激。以撒

python multiple-value typeerror errorbar

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