我有sql表但是,一些值添加了多次,我需要删除其中一个.你能给我一个简单的查询吗?
我正在使用BeautifulSoup来抓一个网站.该网站的页面在我的浏览器中呈现:
乐施会国际的报告题为"越位! http://www.coopamerica.org/programs/responsibleshopper/company.cfm?id=271
特别是单引号和双引号看起来很好.它们看起来是html符号而不是ascii,但奇怪的是当我在FF3中查看源代码时,它们似乎是正常的ascii.
不幸的是,当我刮掉的时候我会得到类似的东西
u'Oxfam International\xe2的报告题为"xe2"--Offside!
哎呀,我的意思是:
u'Oxfam International\xe2€™s report entitled \xe2€œOffside!
Run Code Online (Sandbox Code Playgroud)
页面的元数据表示'iso-88959-1'编码.我尝试了不同的编码,使用unicode-> ascii和html-> ascii第三方功能,并查看了MS/iso-8859-1的差异,但事实是该™与a无关单引号,我似乎无法将unicode + htmlsymbol组合转换为正确的ascii或html符号 - 在我有限的知识中,这就是我寻求帮助的原因.
我很满意ascii双引号,"或"
以下问题是我担心其他有趣的符号解码不正确.
\xe2€™
Run Code Online (Sandbox Code Playgroud)
下面是一些python来重现我所看到的,然后是我尝试过的东西.
import twill
from twill import get_browser
from twill.commands import go
from BeautifulSoup import BeautifulSoup as BSoup
url = 'http://www.coopamerica.org/programs/responsibleshopper/company.cfm?id=271'
twill.commands.go(url)
soup = BSoup(twill.commands.get_browser().get_html())
ps = soup.body("p")
p = ps[52]
>>> p
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
UnicodeEncodeError: 'ascii' codec can't encode character u'\xe2' in position 22: ordinal not in range(128) …Run Code Online (Sandbox Code Playgroud) 我在网上找到的用于设置Z-Index以在Silverlight中引入元素的所有文档和示例都使用Canvas元素作为容器.
我的项目是DataTemplate中ItemsControl容器内的Border元素.我正在使用MouseEnter和MouseLeave事件在ScaleTransform.ScaleX和ScaleTransform.ScaleY上触发动画,以便它们在悬停时生长.由于它们已调整大小并占据与容器中其他项目相同的空间,因此最近添加的项目与旧项目重叠(与当前调整大小的项目相对).有没有一种清洁方法可以将当前项目转发到我触发动画的代码中,以便它们在调整大小时重叠所有其他项目?
随着时间的推移,似乎越来越像函数式编程对其他编程语言产生更多影响.我们在我的AI课程中开始使用Prolog,似乎有一些东西可以使非AI领域的编程变得更容易.我的问题是:为什么逻辑编程没有以同样的方式被捕获?
在本主题中,似乎达成了一个普遍的共识,即逻辑编程很有用,但必须这样证明.它有没有被认为有用的原因?
更新:也许我应该更清楚一点.我不是在问Prolog.我可以理解为什么在大多数真实世界的应用程序中选择Prolog不是一个好主意.
为了举一个我正在讨论的内容的例子,请考虑Python中的列表推导/ map/filter.这些明显受功能语言的影响.为什么像Python这样的语言还没有从逻辑编程语言中学到这些东西,比如它们有函数式语言?
我最近开始使用Zend Studio,它报告了以下类型的代码:
$q = query("select * from some_table where some_condition");
while ($f = fetch($q)) {
// some inner workings
}
Run Code Online (Sandbox Code Playgroud)
要停止警告,代码需要像这样写:
$q = query("select * from some_table where some_condition");
$f = fetch($q);
while ($f) {
// some inner workings
$f = fetch($q);
}
Run Code Online (Sandbox Code Playgroud)
为什么这被标记为警告?这么糟糕吗?
我知道警告可能旨在阻止这样的错误:
$a = 1;
while ($a = 1) {
// some inner workings
$a++;
}
Run Code Online (Sandbox Code Playgroud)
永远不会终止,因为1被分配给$ a,而$ a又返回1到while语句,而不是针对$ a进行测试,并且当$ a不是1时,将false返回到while语句.
容易出错的错误可以验证警告,但是在第二个例子中忘记在while块的末尾添加额外的$ f = fetch($ q),这也会导致永远不会终止的循环.如果我更改我的代码以删除警告,然后忘记在while块的末尾添加$ f = fetch($ q),Zend将不会发出警告!
因此,通过删除有关常见错误的警告,我正在为自己设置一个不同的常见错误.
走出锅,进入火中.
warnings zend-framework variable-assignment while-loop conditional-statements
我可以在运行时更改存根的行为吗?就像是:
public interface IFoo { string GetBar(); }
[TestMethod]
public void TestRhino()
{
var fi = MockRepository.GenerateStub<IFoo>();
fi.Stub(x => x.GetBar()).Return("A");
Assert.AreEqual("A", fi.GetBar());
fi.Stub(x => x.GetBar()).Return("B");
Assert.AreEqual("B", fi.GetBar()); // Currently fails here
}
Run Code Online (Sandbox Code Playgroud)
我的代码示例仍然在给定的行中失败,fi.GetBar()仍然返回"A".
或者是否有另一种技巧来模拟其行为随时间变化的存根?我宁愿不求助于使用fi.Stub(...).Do(...).
啊,可能我只是需要硬拷贝的精美手册让某人用它来击打我.它看起来应该很明显,但我找不到它.
是否有更好/更短的方式来处理(大量)空引用,例如当我使用LinqToXML时.
我为XElement编写了这个扩展,可以很好地处理它,但也许有另一种方法?
那个功能名称怎么样?"和"并不是真正具有描述性的.
public static class XmlExtentions
{
public static T And<T>(this T obj, Func<T, T> action) where T : XElement
{
return obj == null ? obj : action(obj);
}
}
internal class Program
{
private static void Main()
{
//create example xml element
var x =
XElement.Parse("<root><find><name>my-name</name></find></root>");
//old way
var test1 = x.Element("find");
if (test1 != null) test1 = test1.Element("name");
Console.WriteLine(test1);
//using the extentions method
var test2 = x.Element("find").And(findme => findme.Element("name"));
Console.WriteLine(test2);
Console.ReadLine();
}
}
Run Code Online (Sandbox Code Playgroud)
PS:我知道我可以在这个例子中使用XPath,但在更复杂的情况下并非总是如此.
我开始一般使用LINQ(到目前为止使用XML和toSQL).我已经看到有时候有两种或更多种方法可以达到相同的效果.拿这个简单的例子,据我所知,两者都返回完全相同的东西:
SomeDataContext dc = new SomeDataContext();
var queue = from q in dc.SomeTable
where q.SomeDate <= DateTime.Now && q.Locked != true
orderby (q.Priority, q.TimeCreated)
select q;
var queue2 = dc.SomeTable
.Where( q => q.SomeDate <= DateTime.Now && q.Locked != true )
.OrderBy(q => q.Priority)
.ThenBy(q => q.TimeCreated);
Run Code Online (Sandbox Code Playgroud)
除了我在语法中可能犯的任何错误或缺少参数或差异之外,我们的想法是有两种表达同一事物的方法; 我知道第一种方法有一些局限性,"点符号"更完整,但除此之外,还有其他优点吗?
我们有一个相当简单的基于Django的网站来进行CRUD操作.我一直在本地进行测试和开发,然后在测试完成后检查发布和数据库模式更改到实时服务器上.我们最近在发布某些类型的更改时遇到了问题.想象一下以下一系列事件:
其他网站如何处理这些问题?我的想法:
思考?
c# ×3
wpf ×2
.net ×1
.net-3.5 ×1
deployment ×1
django ×1
html ×1
lambda ×1
linq ×1
linq-to-xml ×1
null ×1
prolog ×1
python ×1
rhino-mocks ×1
schema ×1
silverlight ×1
sql ×1
sql-server ×1
unicode ×1
unit-testing ×1
versioning ×1
warnings ×1
while-loop ×1
winforms ×1
xaml ×1