我现在的主要语言是D,我正在学习Python,因为这是我正在学习的课程所必需的.虽然我理解为什么动态语言会让人们在没有类型推断或模板的情况下使用静态语言进行编程(IMHO模板在很大程度上是编译时的鸭子打字),但我很好奇动态语言的好处是什么即使你有那些.
最重要的是,如果我要学习Python,我想以一种真正改变我对编程思路的方式来学习它,而不仅仅是在Python中编写D.我没有使用动态语言,因为我是一个相当新手的程序员,无法欣赏他们所提供的灵活性,并希望学会现在充分利用它们.在静态语言中,即使使用模板,多态,静态类型推断以及可能的运行时反射,在动态类型化的解释语言中,可以轻松/优雅地完成哪些操作?
python programming-languages dynamic-languages duck-typing language-design
我正在使用数据绑定来设置控件上的visible属性:
控制页面:
<asp:LinkButton ID="ApproveTimeLink" runat="server" Visible="<%# CanApprove() %>"> Approve Time</asp:LinkButton>
CodeBehind上的代码:
Protected bool CanApprove()
{
return false;
}
你可以看到控件不应该显示,但仍然可以.我没有收到任何错误,我很困惑为什么这不起作用.
谢谢您的帮助.
我有一个项目需要播放视频但不允许下载.
我喜欢使用Flash,但我看到过让你从YouTube下载文件的应用程序 - 这让我想知道Flash是不是那么安全.
我必须使用Quicktime或Windows Media吗?
现在这一定很容易,但两个怎么样NSNumber?就好像:
[one floatValue] + [two floatValue]
Run Code Online (Sandbox Code Playgroud)
还是存在更好的方式?
该User.Identity.Name属性返回域登录ID.
哪个类/属性公开了实际的用户名?
对于登录提供my_domain\jdoe的Web应用程序的用户"John Doe"
**User.Identity.Name -**
Returns : *my_domain\jdoe*
**System.Environment.UserName**
Returns: *jdoe*
Run Code Online (Sandbox Code Playgroud)
哪个类/属性返回?......"John Doe"
我想在JavaScript中创建一个String.replaceAll()方法,我认为使用RegEx将是最简洁的方法.但是,我无法弄清楚如何将变量传递给RegEx.我已经可以做到这一点,它将用"A"替换所有"B"的实例.
"ABABAB".replace(/B/g, "A");
Run Code Online (Sandbox Code Playgroud)
但我想做这样的事情:
String.prototype.replaceAll = function(replaceThis, withThis) {
this.replace(/replaceThis/g, withThis);
};
Run Code Online (Sandbox Code Playgroud)
但显然这只会替换文本"replaceThis"...所以如何将此变量传递给我的RegEx字符串?
我正在编写一个Python实用程序,需要解析一个我无法控制的大型,定期更新的CSV文件.该实用程序必须在只有Python 2.4可用的服务器上运行.CSV文件根本不引用字段值,但csv库的Python 2.4版本似乎没有给我任何关闭引用的方法,它只允许我设置引号字符(dialect.quotechar = '"'或其他).如果我尝试将引号字符设置为None空字符串,则会出现错误.
我可以通过设置dialect.quotechar一些"稀有"字符来解决这个问题,但这很脆弱,因为没有ASCII字符我绝对可以保证不会出现在字段值中(除了分隔符,但如果我设置dialect.quotechar = dialect.delimiter,那么事情就会发生)可以预见的乱七八糟的.
在Python 2.5及更高版本中,如果我设置dialect.quoting为csv.QUOTE_NONE,则CSV阅读器会尊重它,并且不会将任何字符解释为引用字符.有没有办法在Python 2.4中复制此行为?
更新:感谢Triptych和Mark Roddy帮助缩小问题范围.这是一个最简单的案例演示:
>>> import csv
>>> import StringIO
>>> data = """
... 1,2,3,4,"5
... 1,2,3,4,5
... """
>>> reader = csv.reader(StringIO.StringIO(data))
>>> for i in reader: print i
...
[]
Traceback (most recent call last):
File "<stdin>", line 1, in ?
_csv.Error: newline inside string
Run Code Online (Sandbox Code Playgroud)
只有在行的最后一列中有一个双引号字符时才会出现此问题.不幸的是,我的数据集中存在这种情况.我接受了Tanj的解决方案:手动指定一个非打印字符("\x07" …
我收到以下编译错误
致命错误C1189:#error:错误:使用C运行时库内部头文件.
我绝对不知道.任何人都可以对它有所了解吗?
完整的错误:
C:\ Program Files\Microsoft Visual Studio 8\VC\ce\include\crtdefs.h(100):致命错误C1189:#error:错误:使用C运行时库内部头文件.生成代码......
我有一个ASP.NET页面,上面有一个表单.它上面还有一个搜索表单.搜索位于页面的右上角,因此搜索按钮首先添加到控件层次结构中.
当您处理另一个表单并按Enter键时,将单击搜索按钮.我不想要这个,我希望当你按下输入时,单击该表单的按钮.
我试过像这样使用jQuery:
$('#textBoxId').keyup(function(e) {
if(e.keyCode === 13) {
$('#buttonId').click();
e.preventDefault();
}
});
Run Code Online (Sandbox Code Playgroud)
但提交的表单,意味着客户端验证没有运行(即onclick事件处理程序没有在按钮上运行).
实现这一目标的最佳方法是什么?
我目前正在研究我必须创建的新应用程序的单元测试.我已经完成了基本的测试(测试ActionResult类非常好).但我确实想确定的一点是,我的解决方案中存在一个视图.我不是100%肯定我的测试是正确的,所以如果有人有建议,请不要犹豫!
这是一个测试,我必须检查我的安全控制器上的登录方法是做正确的事情:
[TestMethod]
public void Login()
{
var authProvider = new Mock<IAuthenticationProvider>();
var controller = new SecurityController(authProvider.Object);
var result = controller.Login() as ViewResult;
Assert.IsNotNull(result, "ActionResult should be of type ViewResult.");
Assert.AreEqual(result.ViewName, "login", "Does not render login page.");
}
Run Code Online (Sandbox Code Playgroud)
我对测试的解释是:
我想要的是第三个断言,看看要呈现的视图是否实际存在.
我的一些次要问题是:
谢谢!
注意:我明确地试图避免检查文件系统.我有点希望能够使用ViewEngine确认视图实际存在.
asp.net ×2
javascript ×2
python ×2
adsi ×1
asp.net-mvc ×1
c# ×1
c++ ×1
csv ×1
drm ×1
duck-typing ×1
identity ×1
jquery ×1
math ×1
nsnumber ×1
objective-c ×1
regex ×1
streaming ×1
unit-testing ×1
video ×1