相关疑难解决方法(0)

为什么.NET中存在null?

为什么.NET中的值为null?这是否优于保证所有内容都具有值并且没有任何调用为空?

任何人都知道这些方法的名称是什么?

无论哪种方式,我对此都知之甚少,但是在简单性方面,即在消除空检查方面,并且能够编写更加简化的算法而不必分支出来检查.

在性能,简洁性,平行性,面向未来等方面,每种风格的优缺点是什么?

.net c# clr performance type-systems

35
推荐指数
5
解决办法
2668
查看次数

在Haskell中查找列表中的元素索引?

我在Haskell中有一个函数,它从列表中找到取幂的最大值:

prob99 = maximum $ map (\xs -> (head xs)^(head (tail xs))) numbers
Run Code Online (Sandbox Code Playgroud)

我需要找到的是最终值在结果列表中的位置.我该怎么做?

编辑:我找到了一个像这样的解决方案:

n = [[519432,525806],[632382,518061]....
prob99b [a,b] = b* (log a)
answer = snd $ maximum (zip  (map prob99b n) [1..])
Run Code Online (Sandbox Code Playgroud)

indexing haskell list

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

从包含"Just"的Maybe返回操作

我有一个返回类型为的函数 Maybe ([(Int,Int)],(Int,Int))

我想从另一个函数调用它并对数据执行操作.

但是,返回值包含在Just.第二种方法需要([(Int,Int)],(Int,Int)),因此不会接受Just ([(Int,Int)],(Int,Int)).

Just在应用第二种方法之前,有没有办法可以修剪?

我不完全了解使用JustMaybe-不过,我已被告知,对于第一种方法的返回类型必须是Maybe.

monads haskell maybe

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

我应该如何键入提示一个也可以是无限的整数变量?

搜索此主题时,我遇到了以下问题:如何表示整数无穷大?

我同意 Martijn Peeters 的观​​点,即添加一个单独的特殊无穷大值int可能不是最好的想法。

然而,这使得类型提示变得困难。假设以下代码:

myvar = 10   # type: int
myvar = math.inf  # <-- raises a typing error because math.inf is a float
Run Code Online (Sandbox Code Playgroud)

但是,代码在任何地方都按其应有的方式运行。我的类型提示在其他任何地方都是正确的。

如果我改写以下内容:

myvar = 10  # type: Union[int, float]
Run Code Online (Sandbox Code Playgroud)

我可以math.inf毫不费力地分配。但现在任何其他浮动也被接受。

有没有办法正确限制类型提示?或者我type: ignore每次分配无穷大时都被迫使用?

python type-hinting mypy

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

标签 统计

haskell ×2

.net ×1

c# ×1

clr ×1

indexing ×1

list ×1

maybe ×1

monads ×1

mypy ×1

performance ×1

python ×1

type-hinting ×1

type-systems ×1