问题列表 - 第19859页

Haskell中随机数的采样序列

我需要用于模拟的小型高斯随机数列表,所以我尝试了以下方法:

import System.Random

seed = 10101
gen = mkStdGen seed

boxMuller mu sigma (r1,r2) =  mu + sigma * sqrt (-2 * log r1) * cos (2 * pi * r2) 
Run Code Online (Sandbox Code Playgroud)

这只是Box-Muller算法 - 给定r1,r2在[0,1]区间内的均匀随机数,它返回一个高斯随机数.

normals 0 g = [] 
normals n g = take n $ map (boxMuller 0 1) $ pairs $ randoms g
    where pairs (x:y:zs) = (x,y):(pairs zs)
Run Code Online (Sandbox Code Playgroud)

所以我normals每次需要我的随机数列表时都会使用这个函数.

问题必须明显:它始终生成相同的序列,因为我总是使用相同的种子!我没有得到新的序列,我只是一直得到序列的前n个值.

我明确假装的是,当我输入时:

x = normal 10 
y = normal 50
Run Code Online (Sandbox Code Playgroud)

我要将x作为前10个值,将map (boxMuller 0 1) $ …

random haskell functional-programming referential-transparency

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

为什么django项目中的__init__模块加载了两次

我放

print 'Hello world!'
Run Code Online (Sandbox Code Playgroud)

进入__init__.py我的django项目.当我./manage.py runserver现在跑,我得到

gruszczy@gruszczy-laptop:~/Programy/project$ ./manage.py runserver
Hello world!
Hello world!
Validating models...
0 errors found
Run Code Online (Sandbox Code Playgroud)

为什么__init__.py要跑两次?它应该只加载一次.

python django

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

为什么不在子查询中出现"无效列名XYZ"错误; 虽然列名不在子查询表中?

当我运行此查询时

SELECT CustomerId FROM Stocks.dbo.Suppliers
Run Code Online (Sandbox Code Playgroud)

它给了我这个错误.列名称'CustomerId'无效.此错误有效,因为Suppliers表中没有列CustomerId; 但是当我在子查询中使用相同的查询时,它不会给出任何错误.例如

SELECT * 
  FROM SomeOtherDb.dbo.Customer 
 WHERE CustomerId In( SELECT CustomerId 
                        FROM Stocks.dbo.Suppliers)
Run Code Online (Sandbox Code Playgroud)

在这里,我期待相同的错误"无效的列名称",但查询运行没有任何错误.

完全限定名称只是惯例,两个dbs都在同一台服务器上.

CustomerId确实存在于SomeOtherDb.dbo.Customer表中,但不存在于子查询中.

为什么会这样?这是子查询的东西吗?

谢谢.

sql t-sql sql-server sql-server-2005 subquery

11
推荐指数
1
解决办法
3636
查看次数

SQL查找字符串中的第一个非数字字符

我以[nonnumericprefix] [number]格式继承了一个带有标识符的表.例如(ABC123; R2D2456778;等).我想知道是否有一种很好的方法可以将SQL拆分为两个字段,例如右侧形成的最大整数,以及前缀,例如(ABC,123; R2D,2456778等).我知道我可以使用游标,C#代码等来实现这一点 - 如果必须的话,我会这样做 - 但我不会经常遇到我在SQL中不能快速轻松地做的事情,所以我想我会发布它这里.

t-sql sql-server string parsing

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

C#Type参数为通用声明

我在为泛型方法指定Type时尝试使用Type参数时收到错误.

错误:'JsonFilter.JsonDataType'是'属性',但用作'类型'

public class JsonFilter : ActionFilterAttribute
{
    public Type JsonDataType { get; set; }
    public override void OnActionExecuting(ActionExecutingContext filterContext)
    {
        ...
        JavaScriptSerializer jss = new JavaScriptSerializer();
        var result = jss.Deserialize<JsonDataType>(inputContent);//Error here
        ...
Run Code Online (Sandbox Code Playgroud)

新规范

...
JavaScriptSerializer jss = new JavaScriptSerializer();
MethodInfo method = jss.GetType()
               .GetMethod("Deserialize")
               .MakeGenericMethod(new Type[] { JsonDataType });
var result = method.Invoke(jss, new object[] { inputContent });
filterContext.ActionParameters[Param] = result;
...
Run Code Online (Sandbox Code Playgroud)

反射节省了一天.感谢@Jason解释当type被指定为泛型方法(< Typename >)的一部分时,它会被编译成字节.而作为属性,它可以是任何类型,只能在运行时确定.

UPDATE

对于此特定问题,以下代码更简洁.

var o = new DataContractJsonSerializer(JsonDataType).ReadObject(
    filterContext.HttpContext.Request.InputStream);
filterContext.ActionParameters[Param] = o;
Run Code Online (Sandbox Code Playgroud)

c# generics

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

任何一种检测大小写敏感文件名错误的方法?

我们正在Mono/*nix上创建一个在ASP.Net上运行的项目

我们的问题是我们在Windows上开发,我们只是在Mono上经常构建和测试它.因此,我们最近遇到了一些区分大小写的文件名.一切似乎在Windows中运行良好,然后我们转移到Mono并且它默默地被破坏了.(因为,它构建但不会运行或部分不起作用)

在我们开发Windows的过程中,您如何建议我检测到这一点?基本上,我们如何使代码中的区分大小写的文件名看起来不对,代码在Windows上运行但不是*nix?

c# asp.net mono case-sensitive

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

git中的编辑

我最近开始为FTP编写一个小的Python脚本.首先,我有一个在脚本中硬连线的FTP站点的服务器,登录名和密码详细信息,但这并不重要,因为我只在本地工作.

然后,我有了将项目放在github上的天才想法.我很快意识到自己的错误,并用一个涉及的解决方案取代了硬连线的细节.netrc.我现在已经从github中删除了该项目,因为任何人都可以查看历史记录,并以纯文本格式查看登录详细信息.

问题是,是否有任何方法可以通过git历史记录并删除整个用户名和密码,但是否则保留历史记录?或者我是否需要开始一个没有历史记录的新回购?

git

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

Silverlight控件生命周期

有人能告诉我在Silverlight控件的生命周期中被触发的事件吗?

例如,在ASP.NET中,您将拥有PreInit,Init,PreLoad,Load等.

silverlight-3.0

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

获取方括号的内容,避免嵌套括号

(第一次海报,谷歌的长期访客)

我正在尝试提取一些方括号的内容,但是我有一点麻烦.我已经让它适用于圆括号,如下所示,但我看不出它应该如何修改以适用于方括号.我本以为在这个例子中替换正方形的圆形反之亦然,但显然不行.

它需要忽略括号内的括号.所以它不会返回(11)但会返回(10(11)12).

$preg = '#\(((?>[^()]+)|(?R))*\)#x';
$str = '123(456)(789)(10(11)12)';

if(preg_match_all($preg, $str, $matches)) {
    $matches = $matches[0];
} else {
    $matches = array();
}

echo '<pre>'.print_r($matches,true).'</pre>';

This returns:

Array (
    [0] => (456)
    [1] => (789)
    [2] => (10(11)12)
)
Run Code Online (Sandbox Code Playgroud)

哪个是完美的.但是,如何才能使用方括号代替字符串,例如:

$str = '123[456][789][10[11]12]'; 
Run Code Online (Sandbox Code Playgroud)

php regex recursion parentheses preg-match

3
推荐指数
1
解决办法
1720
查看次数

如何处理android中每天触发的警报

我想在我的应用程序中设置一个警报,每天都会触发.根据文档,我必须设置一次性警报,并在接收警报信号的BroadcastReceiver中,重置第二天的警报. 那是对的吗 ?

我的BroadcastReceiver很好地处理了唤醒锁并启动了一个释放这个唤醒锁的服务.这里一切都很好.

但是我有问题.在我的应用程序中,有一个复选框,在闹钟响起时进行检查.要知道我的闹钟是否已启动,我使用以下条件:

Intent intent = new Intent( context, AlarmReceiver.class );
boolean alarmUp = (
PendingIntent.getBroadcast( context, 0, intent, PendingIntent.FLAG_NO_CREATE) != null)
Run Code Online (Sandbox Code Playgroud)

但这似乎不能很好地工作,这是一个很好的方法来了解警报是否已经启动?

提前致谢

android broadcastreceiver alarm

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