程序设计

专业和发烧友程序员的问答

12
bs4.FeatureNotFound:找不到具有您请求的功能的树构建器:lxml。您需要安装解析器库吗?
... soup = BeautifulSoup(html, "lxml") File "/Library/Python/2.7/site-packages/bs4/__init__.py", line 152, in __init__ % ",".join(features)) bs4.FeatureNotFound: Couldn't find a tree builder with the features you requested: lxml. Do you need to install a parser library? 以上输出在我的终端上。我在Mac OS 10.7.x上。我有Python 2.7.1,并按照本教程操作获得了Beautiful Soup和lxml,它们都已成功安装并与位于此处的单独测试文件一起使用。在导致此错误的Python脚本中,我包含以下行: from pageCrawler import comparePages 在pageCrawler文件中,我包含以下两行: from bs4 import BeautifulSoup from urllib2 import …

2
为什么不能在同一结构中存储值和对该值的引用?
我有一个值,我想以自己的类型存储该值和对该值中内容的引用: struct Thing { count: u32, } struct Combined<'a>(Thing, &'a u32); fn make_combined<'a>() -> Combined<'a> { let thing = Thing { count: 42 }; Combined(thing, &thing.count) } 有时,我有一个值,并且想在同一结构中存储该值和对该值的引用: struct Combined<'a>(Thing, &'a Thing); fn make_combined<'a>() -> Combined<'a> { let thing = Thing::new(); Combined(thing, &thing) } 有时,我什至没有引用该值,并且得到了相同的错误: struct Combined<'a>(Parent, Child<'a>); fn make_combined<'a>() …

4
正则表达式以匹配任何字符,包括换行符
是否有正则表达式匹配“包括换行符在内的所有字符”? 例如,在下面的正则表达式中,$2由于(.+?)匹配时不包含新行,因此没有输出。 $string = "START Curabitur mollis, dolor ut rutrum consequat, arcu nisl ultrices diam, adipiscing aliquam ipsum metus id velit. Aenean vestibulum gravida felis, quis bibendum nisl euismod ut. Nunc at orci sed quam pharetra congue. Nulla a justo vitae diam eleifend dictum. Maecenas egestas ipsum elementum dui sollicitudin …
222 regex  perl 

13
删除另一个数组中包含的所有元素
我正在寻找一种从javascript数组中删除所有元素(如果它们存在于另一个数组中)的有效方法。 // If I have this array: var myArray = ['a', 'b', 'c', 'd', 'e', 'f', 'g']; // and this one: var toRemove = ['b', 'c', 'g']; 我想对myArray进行操作以使其保持这种状态: ['a', 'd', 'e', 'f'] 使用jQuery,我使用grep()和inArray(),效果很好: myArray = $.grep(myArray, function(value) { return $.inArray(value, toRemove) < 0; }); 有没有一种纯Javascript方式无需循环和拼接的方法?
222 javascript  arrays 

20
两个对象之间的一般深度差异
我有两个对象:oldObj和newObj。 输入的数据oldObj用于填充表单,newObj是用户更改此表单中的数据并提交后的结果。 两个物体都很深,即。它们具有对象或对象数组等属性-它们的深度可以为n层,因此diff算法需要递归。 现在我需要不只是从弄清楚什么改变(如添加/更新/删除)oldObj来newObj,却怎么也最能代表它。 到目前为止,我的想法只是建立一个genericDeepDiffBetweenObjects将在表单上返回对象的方法,{add:{...},upd:{...},del:{...}}但随后我想到:之前一定有人需要此方法。 那么...是否有人知道可以做到这一点的库或一段代码,也许有一种更好的方式来表示差异(以仍然可序列化JSON的方式)? 更新: 我想到了一种更好的方式来表示更新的数据,方法是使用与相同的对象结构newObj,但将所有属性值都转换为表单上的对象: {type: '<update|create|delete>', data: <propertyValue>} 所以如果newObj.prop1 = 'new value'和oldObj.prop1 = 'old value'它将设置returnObj.prop1 = {type: 'update', data: 'new value'} 更新2: 当我们进入数组的属性时,它确实变得毛茸茸,因为该数组[1,2,3]应被视为等于[2,3,1],这对于基于值的类型的字符串(如string,int和bool)而言足够简单,但在涉及到引用类型的数组,例如对象和数组。 应该找到相等的示例数组: [1,[{c: 1},2,3],{a:'hey'}] and [{a:'hey'},1,[3,{c: 1},2]] 检查这种类型的深价值平等不仅很复杂,而且还找到了一种表示可能发生的变化的好方法。


14
删除Conda环境
我想删除使用conda创建的特定环境。我该如何实现?假设我有一个活跃的testenv环境。我通过遵循文档尝试了: $ conda env remove CondaEnvironmentError: cannot remove current environment. deactivate and run conda remove again 然后我将其停用: $ source deactivate 我尝试再次运行命令将其删除,但仍然出现相同的错误。这是怎么了?
222 python  jupyter  conda 


10
超出范围访问数组有多危险?
在数组边界之外(在C中)访问数组有多危险?有时可能会发生以下情况:我从数组外部进行了读取(现在我了解到然后我会访问程序其他部分甚至更远的部分使用的内存),或者试图将值设置为数组外部的索引。该程序有时会崩溃,但有时只能运行,只会产生意外的结果。 现在我想知道的是,这到底有多危险?如果它破坏了我的程序,那还不错。另一方面,如果它由于我设法以某种方式设法访问了一些完全不相关的内存而破坏了程序外部的某些内容,那么我想这是非常糟糕的。我读到很多“可能发生的事情”,“分割可能是最不严重的问题”,“您的硬盘可能变粉并且独角兽可能正在您的窗户下面唱歌”这一切都很好,但是真正的危险是什么? 我的问题: 从程序外部读取值是否会破坏程序以外的任何内容?我可以想象只是看东西不会改变任何东西,还是会例如改变我碰巧到达的文件的“上次打开时间”属性? 设置值超出数组范围是否会损坏程序以外的任何内容?从这个 堆栈溢出问题可以看出,可以访问任何内存位置,并且没有安全保证。 现在,我从XCode中运行我的小程序。这样可以在程序无法到达其自身内存之外的程序周围提供一些额外的保护吗?会伤害XCode吗? 关于如何安全运行我的固有错误代码的任何建议? 我使用OSX 10.7,Xcode 4.6。
221 c  arrays  memory 


5
在Ruby中的多行中拆分长字符串而不剥离换行符
我们最近决定在我的工作中使用红宝石风格指南。命令之一是,任何行都不能超过80个字符。由于这是一个Rails项目,所以我们通常使用的字符串会长一些-即“ 用户X希望向您发送有关Thing Y的消息 ”,但这些字符串并不总是符合80个字符的样式限制。 我了解通过三种方式使长字符串跨越多行: 赫雷多克 %Q {} 实际的字符串连接。 但是,所有这些情况最终都需要花费更多的计算周期,这似乎很愚蠢。字符串连接很明显,但是for HEREDOC和%Q我必须通过类似来删除换行符.gsub(/\n$/, '')。 有没有一种纯粹的语法方式可以做到这一点,就等于将整个字符串放在一行上?显然,目标是不花费任何额外的周期,仅仅是因为我希望我的代码更具可读性。(是的,我意识到您必须进行很多折衷……但是对于字符串长度,这似乎很愚蠢。) 更新:反斜杠并不是我想要的,因为您丢失了缩进,这实际上会影响样式/可读性。 例: if foo string = "this is a \ string that spans lines" end 我发现以上内容有点难以阅读。 编辑:我在下面添加了一个答案;三年后,我们现在有了曲折的heredoc。

11
响应式引导导航栏中的中心内容
我无法将内容集中在引导导航栏中。我正在使用引导程序3。我已经阅读了许多文章,但是所使用的CSS或方法不适用于我的代码!我真的很沮丧,所以这就像我的最后选择。任何帮助,将不胜感激! <!DOCTYPE html> <html> <head> <title>Navigation</title> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <!-- Bootstrap --> <link href="css/bootstrap.min.css" rel="stylesheet" media="screen"> <link href="css/style.css" rel="stylesheet" media="screen"> </head> <body> <div class="container"> <nav class="navbar navbar-default" role="navigation"> <!-- Brand and toggle get grouped for better mobile display --> <div class="navbar-header"> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-ex1-collapse"> <span class="sr-only">Toggle navigation</span> …

9
如何在R中一起绘制两个直方图?
我正在使用R,并且有两个数据框:胡萝卜和黄瓜。每个数据框都有一个数字列,该列列出了所有测得的胡萝卜(总计:100k胡萝卜)和黄瓜(总计:50k黄瓜)的长度。 我希望在同一图上绘制两个直方图-胡萝卜长度和黄瓜长度。它们重叠,所以我想我也需要一些透明度。我还需要使用相对频率而不是绝对数字,因为每个组中的实例数量不同。 像这样的东西会很好,但是我不明白如何从我的两个表中创建它:
221 r  plot  histogram 

9
如何在ubuntu上彻底清除并重新安装postgresql?[关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow 的主题。 2年前关闭。 改善这个问题 不知何故,我设法完全在Ubuntu karmic上破解了postgresql的安装。我想从头开始,但是当我用apt-get“清除”软件包时,它仍然留下痕迹,以致重新安装配置无法正常运行。 完成后: apt-get purge postgresql apt-get install postgresql 它说 Setting up postgresql-8.4 (8.4.3-0ubuntu9.10.1) ... Configuring already existing cluster (configuration: /etc/postgresql/8.4/main, data: /var/lib/postgresql/8.4/main, owner: 108:112) Error: move_conffile: required configuration file /var/lib/postgresql/8.4/main/postgresql.conf does not exist Error: could not create default cluster. Please create it manually …

30
为什么Visual Studio 2012找不到我的测试?
我有一些使用内置测试Microsoft.VisualStudio.TestTools.UnitTesting,但无法运行它们。 我正在使用Visual Studio 2012 Ultimate。 我有两个项目的解决方案;一个具有测试,using Microsoft.VisualStudio.TestTools.UnitTesting,[TestClass]前级, [TestMethod]前测试方法与参考Microsoft.VisualStudio.QualityTools.UnitTestFramework(版本10.0.0.0,运行时版本V2.0.50727)。我已经尝试过点网框架3.5、4和4.5,其他给出了重新定位错误。 我试图建立解决方案和项目。测试浏览器显示消息“构建解决方案以发现所有可用测试。单击“全部运行”以构建,发现并运行解决方案中的所有测试。 因此问题是:如何让Visual Studio查找测试? 还尝试遵循以下方法:http : //msdn.microsoft.com/zh-CN/library/ms379625%28v=VS.80%29.aspx但没有成功:当被问到以下问题时,我陷入了入门的这一节右键单击并选择create tests。没有create tests。 我有这个测试(它可以编译,但不会显示在测试浏览器中): using Microsoft.VisualStudio.TestTools.UnitTesting; namespace tests { [TestClass] public class SimpleTest { [TestMethod] public void Test() { Assert.AreEqual("a","a", "same"); } } } 我现在发现(请参阅下面的删除的答案),这是因为它位于共享驱动器上,但是我还不知道如何解决它。(有关安全性设置的信息)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.