这是一年中的那个时候,程序员想要洗牌,以便没有元素存在于其原始位置(至少在荷兰,我们庆祝Sinterklaas并选择吸管来决定谁写一首诗).有人有一个很好的Python 单一声明吗?
那么,输入示例: range(10)
输出示例: [2,8,4,1,3,7,5,9,6,0]
错误的输出将是[2,8,4,1,3,5,7,9,6,0]因为5它处于原始位置.这意味着5人必须为自己写一首诗,这样就不那么有趣了.
编辑许多人只要需要幸运就重复这项任务,并发现事实上解决方案是令人满意的.这是一种糟糕的方法,因为理论上这可能需要很长时间.巴特确实提出了更好的方法,但由于某种原因,我不能把它变成一个oneliner ......
编辑通过oneliner,我的意思是单一陈述.看起来,Python也能够在一行上压缩多个语句.我不知道.目前有非常好的解决方案,只使用分号来模拟单行上的多线行为.因此:"你能在一个声明中做到吗?"
我认为这个问题真的总结了我正在努力做的事情.这是我正在使用的代码.除非我的应用程序在64位计算机上以32位模式运行,否则它适用于所有方案.无论我如何玩__ProviderArchitecture和__RequiredArchitecture标志,我总是只能访问蜂巢的32位部分(WOW6432Node)
uint LOCAL_MACHINE = 0x80000002;
string results = "";
ConnectionOptions options = new ConnectionOptions();
options.Impersonation = ImpersonationLevel.Impersonate;
options.EnablePrivileges = true;
options.Username = this.txtUser.Text;
options.Password = this.txtPassword.Text;
ManagementScope myScope = new ManagementScope("\\\\" + this.txtMachine.Text + "\\root\\default", options);
ManagementPath mypath = new ManagementPath("StdRegProv");
ManagementClass mc = new ManagementClass(myScope, mypath, null);
ManagementBaseObject inParams = mc.GetMethodParameters("EnumKey");
inParams["hDefKey"] = LOCAL_MACHINE;
inParams["sSubKeyName"] = @"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall";
ManagementNamedValueCollection objCtx = new ManagementNamedValueCollection();
objCtx.Add("__ProviderArchitecture", 64);
objCtx.Add("__RequiredArchitecture", true);
InvokeMethodOptions invokeOptions = new InvokeMethodOptions();
invokeOptions.Context = objCtx;
ManagementBaseObject outParams = mc.InvokeMethod("EnumKey", inParams, …Run Code Online (Sandbox Code Playgroud) 我需要在Delphi中创建一个具有以下特征的线程:
我无法向线程发送消息,因为它没有窗口句柄.
我应该使用WaitForObject的某些变体吗?如果是这样,等待的是什么?如果没有,那么我如何保持线程等待,然后在新数据进入队列时唤醒它?
我读过Multithreading - Delphi Way,它似乎没有回答我的问题.也许 OmniThreadLibrary可以做我需要的事情; 我无法分辨,因为文档很少.我不太了解一般的线程,以确定库是否会在这里提供帮助以及如何使用它(甚至为什么要使用它而不是仅使用TThread后代).
我试图在2个表之间创建多对多的关系.我有3张桌子.它遵循TOXY模型.
table a: a.id (primary key)
table ab: ab.a_id (foreign key) ab.b_id (foreign key)
table b: b.id (primary key)
Run Code Online (Sandbox Code Playgroud)
我应该如何插入数据以便将它们全部链接起来?
像这样? "INSERT INTO a ('name') VALUES ('my name')";
那样的吗? "INSERT INTO b ('name') VALUES ('my name')";
但是我必须把a.id和b.id放在表ab中.我应该如何检索它们?
我知道我可以做一个SELECT a.id FROM WHERE name ='my name'.但是,当你插入行时,是不是有更简单的方法可以自动返回一个id?
我尝试了以下方法:
<tk:DataGridTextColumn
Header="Item"
Binding="{Binding Item.Title}"
ToolTipService.ToolTip="{Binding Item.Description}" />
Run Code Online (Sandbox Code Playgroud)
我没有看到任何工具提示.
有任何想法吗?甚至实施了吗?
我想制作win32应用和游戏.C++和Visual C++之间有什么重大差异吗?我该怎么用
假设我有一个PHP模型 - 视图 - 控制器框架,它将地址映射http://example.com/admin/posts/edit/5到一个看起来像的动作
Posts_Controller::editAction($id)
Run Code Online (Sandbox Code Playgroud)
在文件中 /admin/controllers/posts.php
现在,我所看到的许多现有PHP框架都可以通过类似的方式实现
$module = Router::getModule(); // "admin"
$controller = Router::getController(); // "posts"
$action = Router::getAction(); // "edit"
$params = Router::getParams(); // array(5)
$controller_file = "/".$module."/controllers/".$controller.".php";
$controller_classname = ucfirst($controller)."_Controller";
$method = $action."Action";
require_once $controller_file;
$controller_obj = new $controller_classname();
call_user_func_array(array($controller_obj,$method),$params);
Run Code Online (Sandbox Code Playgroud)
对我来说,这闻起来很糟糕,看起来太"神奇"了:我不相信你应该能够根据字符串动态创建类,然后调用指定为字符串的方法.
我也看到了使用反射来调用动作的替代方法,这些方法也有些不好.
现在想象一下,我有一个更大的模块化CMS,它建立在类似的MVC框架之上,每个"页面"类型都有一个数据库表:博客,静态,相册等...我想这个实现是类似于我之前的例子.
我是唯一一个认为这是坏事的人吗?如果没有,是否应该有一种能够涵盖这种情况的设计模式?
是否有一些好方法可以将包含有关模块,控制器,操作和参数的信息的查询映射到
那使用尽可能少的 "魔法"(字符串到类或反射方法或反射)?
更好的是:如果没有反射,如何在C#或Java中完成?我可以允许连接字符串到达文件位置.
我正在使用Maven 2.0.9来构建一个多模块项目.我在父pom中定义了程序集插件.我可以使用构建的程序集
mvn install assembly:assembly
Run Code Online (Sandbox Code Playgroud)
此命令运行测试两次,一次在安装阶段,另一次在组装期间.我尝试了汇编:单一,但它会抛出一个错误.在不运行测试两次的情况下构建程序集的任何帮助都非常感谢.
如何将我的rails应用程序中的数据从mySql迁移到SQLite?
这可能吗?
我想用包含($)的变量在内部回显一个字符串,如下所示:
echo "$string";
Run Code Online (Sandbox Code Playgroud)
我不希望它回应字符串的变量,我希望它回显'$ string'本身,而不是变量的内容.我知道我可以通过在($)前加一个'\'来做到这一点,但我想使用preg_replace来做到这一点.我试过这个并不起作用:
$new = preg_replace("/\$/","\\$",$text);
Run Code Online (Sandbox Code Playgroud) php ×2
32-bit ×1
64-bit ×1
c# ×1
c++ ×1
code-golf ×1
database ×1
datagrid ×1
delphi ×1
echo ×1
maven-2 ×1
maven-plugin ×1
migration ×1
mysql ×1
python ×1
queue ×1
registry ×1
replace ×1
resume ×1
ruby ×1
shuffle ×1
sql ×1
sqlite ×1
string ×1
suspend ×1
variables ×1
visual-c++ ×1
wmi ×1
wpf ×1
wpf-controls ×1
wpftoolkit ×1