有没有办法保存Matplotlib数字,以便可以重新打开并恢复典型的交互?(就像MATLAB中的.fig格式一样?)
我发现自己多次运行相同的脚本来生成这些交互式数字.或者我正在向我的同事发送多个静态PNG文件以显示情节的不同方面.我宁愿发送图形对象并让它们自己与它进行交互.
对于我的一个应用程序,必须经常调用以下函数.这个功能占用了大量的CPU,因此我想知道你是否知道如何提高性能.
代码计算四个字符组合的出现次数.在测试期间,我发现地图中的条目数大约为100. 文本的长度在100到800的范围内.初始大小200是猜测,代码似乎运行得比没有指定初始值更快尺寸.但它可能不是最佳值.
private Map<String, Integer> getTetagramCount(final String text) {
final Map<String, Integer> cipherTetagrams = new HashMap<String, Integer>(200);
for (int i = 0; i < text.length() - 4; i++) {
final String tet = text.substring(i, i + 4);
final Integer count = cipherTetagrams.get(tet);
if (count != null) {
cipherTetagrams.put(tet, count + 1);
} else {
cipherTetagrams.put(tet, 1);
}
}
return cipherTetagrams;
}
Run Code Online (Sandbox Code Playgroud) 我需要关闭jQuery Mobile的<select>下拉样式.最终,我希望设备本身(iPhone,Android,Blackberry等)确定<select>下拉的外观.
目前我的标记是(为了显示目的减少了选项数量):
<div data-role="fieldcontain">
<label for="state">State:</label>
<select name="state" id="state" data-role="none">
<option value="MA">Massachusetts</option>
<option value="MI">Michigan</option>
<option value="MN" selected="selected">Minnesota</option>
<option value="MS">Mississippi</option>
</select>
</div>
Run Code Online (Sandbox Code Playgroud)
我试着用data-role="none"的<select>,但什么都没有改变.
有没有办法只关闭选择下拉菜单"关闭"jQuery Mobile?
下面的代码是实现协变返回类型的唯一方法吗?
public abstract class BaseApplication<T> {
public T Employee{ get; set; }
}
public class Application : BaseApplication<ExistingEmployee> {}
public class NewApplication : BaseApplication<NewEmployee> {}
Run Code Online (Sandbox Code Playgroud)
我希望能够构造一个Application或NewApplication并让它从Employee属性返回适当的Employee类型.
var app = new Application();
var employee = app.Employee; // this should be of type ExistingEmployee
Run Code Online (Sandbox Code Playgroud)
我相信这段代码工作得很好,但是当我有几个需要相同行为的属性时,它变得非常讨厌.
有没有其他方法来实现这种行为?泛型或其他?
我习惯于使用函数式编程(主要是Haskell),我从OO(scala)开始.
我在翻译代码时遇到了麻烦.例如,那是我对H树的B树定义:
data BTree a =
Leaf
|Node2 (BTree a) a (BTree a)
|Node3 (BTree a) a (BTree a) a (BTree a)
deriving (Eq,Read,Show)
Run Code Online (Sandbox Code Playgroud)
这很简单.我的树是空的,或者它有一个值,是两棵树的父亲,或者是3棵子树的父亲.
OO是什么?我没有线索.我无法弄清楚我怎么能以理智的方式做到这一点.
好吧,所以我讨厌问RegEx问题,因为我喜欢通常自己解决问题.另外,它在另一端变得相当烦人,因为人们可能会一直问愚蠢的"你为什么不查看"问题.
我的要求很简单.我想用来Regex.Replace替换具有上下文敏感值的Match.我用它MatchEvaluator来做这个.但为了简单起见,我可以说我很匹配%v
我想要%v逃避,所以如果我使用\%v它将无法匹敌.其他任何东西都应该匹配.
我想出的模式是这样的: (?:[^\\]|^)%v
它基本匹配,%v如果它出现在字符串的开头,或者它跟随除了之外的任何字符\.它不捕获表达式的第一部分.
我知道这不是"正确"的方式.但它工作得很好,直到我注意到当我在替换中使用此模式时,它包含%v替换前的字符(对,对吗?)
所以,如果我ThisIsAValue:%v和我一起Regex.Replace,用字符串替换Value,我的结果将是ThisIsAValueValue代替ThisIsAValue:Value
我已经尝试使用谷歌搜索,但事实上"退出字符"在RegEx中如此沉重,所有结果都是针对逃逸字符的使用而不是用模式挑选它们.
任何RegEx精明的人都知道我怎么能正确地做到这一点?
我有一个非常简单的事情,只输出一些CSV格式的东西,但它必须是UTF-8.我在TextEdit或TextMate或Dreamweaver中打开这个文件,它正确地显示了UTF-8字符,但是如果我在Excel中打开它,它就是这样做的傻事.这是我在文档的头部所得到的:
header("content-type:application/csv;charset=UTF-8");
header("Content-Disposition:attachment;filename=\"CHS.csv\"");
Run Code Online (Sandbox Code Playgroud)
除了Excel(Mac,2008)不想正确导入它之外,这一切似乎都具有预期的效果.Excel中没有选项可以"以UTF-8打开"或其他任何东西,所以......我有点恼火.
尽管有很多人遇到同样的问题,我似乎无法在任何地方找到任何明确的解决方案.我最看重的是包含BOM,但我无法弄清楚如何做到这一点.正如你在上面看到的那样,我只是提供echo这些数据,我不会写任何文件.如果我需要,我可以这样做,我不是因为此时似乎不需要它.有帮助吗?
更新:我尝试回显echo pack("CCC", 0xef, 0xbb, 0xbf);我刚刚从试图检测BOM的网站上提取的BOM.但Excel只会在导入时将这三个字符附加到第一个单元格,并且仍会混淆特殊字符.
更新:从Grails 1.3.6开始,可以从Gant脚本访问完整域.从Grails 1.3.6发行说明:
您现在可以使用run-script命令从命令行运行一个或多个Groovy脚本,例如
grails run-script [path-to-script-1] [path-to-script-2] ... [path-to-script-n]
这解决了Gant脚本中无法方便地访问应用程序类的问题,因为脚本启动时它们在类路径中不可用.
大家好,
我是新手使用Grails(在一个真实的项目中),我有一个我需要执行的一次性脚本,它读取一个文件,然后填充我的数据库.
我希望脚本在我的grails应用程序的上下文中运行,所以我使用了create-script命令.我现在明白这使它成为一个'Gant'脚本.这样做的原因是我认为它可以让我轻松访问所有grails域的优点,这样我就可以轻松地做到这样的事情:
Car car = new Car(model: 'bar', brand: 'Ford')
car.save()
Run Code Online (Sandbox Code Playgroud)
在这里,Car是我的一个域类,我从文件中检索到了字符串'bar'和'Ford'.
我的脚本的开头看起来像这样:
import com.foo.Car
grailsHome = Ant.project.properties."environment.GRAILS_HOME"
includeTargets << new File ( "${grailsHome}/scripts/Bootstrap.groovy" )
target(main: "a script for storing cars") {
depends(bootstrap, classpath) // code dealing with the file with cars follows
Run Code Online (Sandbox Code Playgroud)
令人惊讶的是,java.lang.NoClassDefFoundError: com.foo.Car当我使用命令执行脚本时,groovy给了我一个grails LoadCars
我采取了错误的方法,还是有一些更简单的我做错了?
任何帮助表示赞赏
我正在尝试访问需要一些基本身份验证的Nexus存储库管理器.从Maven2开始,一切正常,但是当我尝试在SBT中配置时,它找不到工件.它使用的是自定义存储库模式(请参阅此相关问题),但我认为这不重要.在任何情况下,相关配置都在这里.
Project.scala:
val snapshotsName = "Repository Snapshots"
val snapshotsUrl = new java.net.URL("http://nexusHostIp:8081/nexus/content/repositories/snapshots")
val snapshotsPattern = "[organisation]/[module]/[revision]-SNAPSHOT/[artifact]-[revision](-[timestamp]).[ext]"
val snapshots = Resolver.url(snapshotsName, snapshotsUrl)(Patterns(snapshotsPattern))
Credentials(Path.userHome / ".ivy2" / ".credentials", log)
val dep = "group" % "artifact" % "0.0.1" extra("timestamp" -> "20101202.195418-3")
Run Code Online (Sandbox Code Playgroud)
〜/ .ivy2/.credentials:
realm=Snapshots Nexus
host=nexusHostIp:8081
user=nexususername
password=nexuspassword
Run Code Online (Sandbox Code Playgroud)
根据SBT用户组中的类似讨论,这应该可以正常工作,但是当我尝试构建时,我得到以下内容.
==== Repository Snapshots: tried
[warn] -- artifact group#artifact;0.0.1!artifact.jar:
[warn] http://nexusHostIp:8081/nexus/content/repositories/snapshots/group/artifact/0.0.1-SNAPSHOT/artifact-0.0.1-20101202.195418-3.jar
Run Code Online (Sandbox Code Playgroud)
我相当肯定这是一个凭证问题,而不是别的因为我可以点击它说它正在尝试的URL并下载jar(在验证之后).
我也试过内联声明凭证(即使它不太理想),如下所示:
Credentials.add("Repository Snapshots", "nexusHostIp", "nexususername", "nexuspassword")
Run Code Online (Sandbox Code Playgroud) 我正在搜索一个java库,它通过查看文件内容(字节数组)告诉你mime类型.我发现这个项目使用jmimemagic,它不再支持更新的文件类型(例如MS word docx格式),因为它现在处于非活动状态(从2006年开始).
java ×2
algorithm ×1
c# ×1
classpath ×1
count ×1
covariance ×1
csv ×1
environment ×1
file-type ×1
gant ×1
generics ×1
grails ×1
hashmap ×1
haskell ×1
html ×1
ivy ×1
jquery ×1
matplotlib ×1
mime ×1
mobile ×1
nexus ×1
oop ×1
performance ×1
php ×1
python ×1
regex ×1
sbt ×1
scala ×1
utf-8 ×1
vb.net ×1