我正在开发一个程序,其中(除其他外)读取CSV文件(它被存储为表单中的dicts数组[{col1:data1a,col2:data2a},{col1:data1b,col2:data2b}]).对于每一行,作为其他处理的一部分,我需要将这些键重新映射到用户输入的值,这些值在另一个dict中提供,因此它们可以用作API调用中的参数.映射数组的形式如下: {badname1:goodname1, badname2:goodname2,...}.
所以我想从:
{badname1:data1, badname2:data2,...}到{goodname1:data1, goodname2:data2,...}
我想使用类似的东西zip()(虽然zip()收益率{badname1:badname1,...}).
似乎应该有一个明显的解决方案,暗指我.
编辑:如果数据在a和映射b:
dict(zip(b,a.itervalues()))
我接近了,但它只适用于已知字段与我认为的顺序相同的情况.
假设我创建了一个带有属性的类:
public class User
{
private string _userID;
public string UserID
{
get { return _userID; }
set { _userID = value; }
}
}
Run Code Online (Sandbox Code Playgroud)
我必须如何处理类和属性才能将方法附加到UserID属性,例如使用"dot"语法围绕用户ID生成Xml的方法:
User u = new User();
u.UserID = "Mike";
string xml = u.UserID.ToXml();
Run Code Online (Sandbox Code Playgroud)
我可以弄清楚如何编写一个方法来将Xml标记放在UserID的值周围,我想要的部分就是如何使用"dot"语法使该方法与属性一起使用.
所有这些答案都很有用,感谢大家的贡献.事实上,我标记为"被接受"的答案正是我所寻求的.我很欣赏扩展方法的注意事项(在此之前我从未听说过),当然在某些情况下将扩展方法应用于所有字符串可能会有问题,但在这种情况下我肯定想应用这个方法ToXml()到类中的所有字符串属性.正是医生所要求的.我对XmlSerialization非常熟悉,但在这种情况下需要避免它出于各种原因.
我的问题是关于开发iPhone/iTouch的代码.
随着Apple向其芯片的英特尔平台过渡,显然现在可以在PC上运行他们的操作系统.
所以,凭借这一点,以及我固有的廉价性,我想知道是否有可能通过在Hackintosh上运行iPhone SDK来绕过购买翻新的Mac?
由于我现在更像是一个业余爱好者,而且是一个认真的开发者,所以我基本上喜欢在完全投入这项努力之前先弄湿我的脚.从长远来看,我知道购买Mac会更好...
您在Rails应用程序上使用Selenium测试时使用了哪些数据?你从装置加载?使用现有的dev db?使用单独的(非固定)数据库?
我在考虑我的选择.我有一个带有大型Selenium测试套件的Rails应用程序,它运行在Selenium Grid的修改版本上.现在,部分过程是在测试套件运行之前加载一大套灯具.这是很多数据.其中大部分是从我们的生产数据库导出的报告信息.当我最初设置它时,我将数据从Oracle导出到yaml.
现在一些报告表中的模式发生了变化,所以当然我必须重新生成夹具数据.有太多的东西,手动编辑文件是不值得的.但是,为每一个小的架构变化进行重新生成似乎效率低下 - 更不用说这是记住要做的又一步.有没有更好的办法?
编辑:我原本打算在每次测试之前加载灯具,并在每次测试后卸载它们,就像常规的Rails测试一样.但由于此报告数据,加载灯具大约需要15分钟.有200多个测试,套件每12小时运行一次.我可以弯曲太空船长!
编辑2:我也同意拥有这么大的装置是难闻的气味.不过,我不确定如何削减它,因为报告汇总了大量数据,而硒测试的大部分价值在于他们测试报告.
即使它只是一小组数据,但它仍然是另一套与架构变化保持协调的集合.(我们有一个单独的,较小的单元,功能和[Rails]集成测试集.)
这让我回到原来的问题 - 除了手工制作还是记得每次重新制作它们之外还有其他选择吗?
商人通常希望开发Web应用程序.他们通过名称了解.net或J2EE,而不了解其中任何一个.
Altho'Rails和Django提供更好更快的开发堆栈,说服商人使用这些平台是一项重大任务.
任务开始于介绍Django(或Rails),引用一些博客/研究.然后为特定项目使用框架提供案例.
很多任务都是重复的.您使用什么来源/博客/白皮书和其他材料来制作django(或Rails)的案例
难道你不认为应该有一个共同的小册子,很多开发机构可以用来制造同样的案例,一次又一次.现在有没有这样的?
关于Django vs Rails似乎有足够的讨论.虽然需要(Django和Rails)vs(.net和J2EE),但至少在做商业案例的时候.两者都代表了动态语言中更快速实用的Web开发.
我刚刚学习Java并尝试通过USB端口连接与设备进行通信.我已经使用C#和OpenNETCF,它允许我通过USB端口在设备上发送文件和检索文件; 我怎样才能用java实现这个目标?
我看看stackoverflow线程,如何在Windows和Java下与USB设备通信?,christoffer的评论是破解本机代码,但我并不完全是他提到的本机代码api.RAPI,也许吧?
我在2000年1月1日之后解析日期时遇到问题.结果错误地返回.1999年被解析为1999年,当它到2000年它将其解析为0100,然后2001解析为0101等.以下是用于说明此问题的测试代码:
<script type="text/javascript" language="javascript">
// functions incorrect changes year from 2010 to 0101
var d = (new Date("12/01/2009"));
if (d.getMonth() < 11)
{ d = new Date(d.getYear(), d.getMonth() + 1, 1); }
else
{ d = new Date(d.getYear() + 1, 0, 1); }
document.write(d);
// Result: Sat Jan 01 0101 00:00:00 GMT-0500 (Eastern Standard Time)
document.write('<br />');
document.write(Date.parse(Date()) < Date.parse(d));
//
// Result: false today should definitely be < 01/01/2010
document.write('<br />');
// Functions correctly if year is before 2000 …Run Code Online (Sandbox Code Playgroud) 有人可以用简单的术语解释X服务器和远程终端服务器之间的区别吗?
例如,Hummingbird Exceed是X服务器,Citrix是远程终端服务器.这些服务器如何工作?
我对Silverlight很新,刚才意识到Silverlight 2中有一个密码盒控件.但是没有太多关于如何从这个控件中获取值的文章.它类似于TextBox控件.我可以使用.text proprty来获取值(但intellisense不显示此属性)?
python ×2
ruby ×2
.net ×1
asp.net ×1
c# ×1
css ×1
dictionary ×1
django ×1
fixtures ×1
iphone ×1
java ×1
javascript ×1
master-pages ×1
passwordbox ×1
selenium ×1
silverlight ×1
usb ×1
xserver ×1