小编Cha*_*tin的帖子

如何在列表中获取项目的位置?

我在列表上进行迭代,如果符合某个条件,我想打印出项目的索引.我该怎么做?

例:

testlist = [1,2,3,5,3,1,2,1,6]
for item in testlist:
    if item == 1:
        print position
Run Code Online (Sandbox Code Playgroud)

python list

158
推荐指数
6
解决办法
51万
查看次数

教学编程和形式方法

这是一个奇怪的问题.我正在编写一本关于学习使用正式方法编程的书,我将把它定位到具有一些编程经验的人.我们的想法是让他们成为高素质的程序员.

基本符号将来自Dijkstra的编程规则,以及一些并发和通信扩展.

与EWD不同,我希望我的学生最终能够编写实际的可执行程序.这意味着在某些时候从EWD符号转换为其他语言.当我第一次开始正式编程时,我以C为目标,但你最终编写了大量的管道,加上处理指针的所有复杂性等.Ruby是一个明显可能的目标,如Scheme或Lisp.但也有各种函数语言; 因为我对并发特别感兴趣,所以Erlang似乎是一种可能性.

所以,最后,我的问题是:我应该用什么语言教我的读者定位他们正式开发的程序?

programming-languages formal-methods dijkstra

22
推荐指数
2
解决办法
2742
查看次数

Grails/Hibernate:版本控制时出现空指针异常

使用Grails中的遗留代码库.在某些条件下(我们还不清楚到底是什么)我们得到一个神秘的NPE,堆栈跟踪如下,同时做一个findBy.

到目前为止,我们有点受阻; 这出现在Hibernate的几个论坛上,但回应似乎归结为"你的架构出了问题".找到一些额外的细节来帮助我们追踪问题会很棒.

更新

谢谢你的回答.是的,很明显,在这个NPE发生的时候,versionnull.麻烦的是,当我们在代码中查看它时,它不是 null.

我们开始怀疑存在线程问题.

Caused by: java.lang.NullPointerException
    at org.hibernate.type.LongType.next(LongType.java:79)
    at org.hibernate.engine.Versioning.increment(Versioning.java:131)
    at org.hibernate.event.def.DefaultFlushEntityEventListener.getNextVersion(DefaultFlushEntityEventListener.java:387)
    at org.hibernate.event.def.DefaultFlushEntityEventListener.scheduleUpdate(DefaultFlushEntityEventListener.java:279)
    at org.hibernate.event.def.DefaultFlushEntityEventListener.onFlushEntity(DefaultFlushEntityEventListener.java:151)
    at org.hibernate.event.def.AbstractFlushingEventListener.flushEntities(AbstractFlushingEventListener.java:219)
    at org.hibernate.event.def.AbstractFlushingEventListener.flushEverythingToExecutions(AbstractFlushingEventListener.java:99)
    at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:49)
    at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1027)
    at org.codehaus.groovy.grails.plugins.quartz.listeners.SessionBinderJobListener.jobWasExecuted(SessionBinderJobListener.java:58)
    at org.quartz.core.QuartzScheduler.notifyJobListenersWasExecuted(QuartzScheduler.java:1910)
Run Code Online (Sandbox Code Playgroud)

orm grails hibernate

16
推荐指数
2
解决办法
7317
查看次数

何时在Web界面和本机GUI之间进行选择?

我们今天所知的许多应用程序(特别是网络的应用程序,例如文件共享,sql查询程序,一些多人游戏)可以通过使用Web界面轻松提供.

我的问题是我应该何时使用浏览器访问应用程序?

当使用使用Qt,Visual Basic等接口构建的桌面应用程序是明智的.

desktop web-applications interface

14
推荐指数
1
解决办法
4197
查看次数

使用Ruby或Python创建静态图形文件(png,gif,jpg)

我想基于用户输入动态创建图形图像,然后将该图像呈现为PNG文件(如果需要,可以是jpg或gif,但首选PNG).

这实际上是一个占星术应用程序; 我想做的是在PNG中生成图表以供显示.

Python或Ruby很好; 实际上,可用的库可能决定了我使用的语言.

更新

这是一个示例图像:
星座图示例图

ruby python graphics png

10
推荐指数
3
解决办法
2万
查看次数

僵尸线程吃我的脑子(J2EE,Tomcat,Hibernate,Quartz)

万圣节毕竟.

问题在于:我正在使用Quartz维护一些旧的J2EE代码,其中我的线程已经用完了. jconsole告诉我,当它变成梨形时,只有不到60K的线程,其中大约100(!!)实际上正在运行.直觉和一些谷歌搜索(也见这里)表明正在发生的事情(我打赌Quartz)正在创建永远不会被清理的非托管线程.

几个子问题:

  1. 它有一个工具,我可以轻松地跟踪线程创建,所以我可以肯定问题是真的Quartz?

  2. 我发现的关于类似问题的大多数内容都引用了Weblogic; 这是Tomcat的假导演吗?

  3. 有人有一个已知的解决方案吗?

自从我做了J2EE以来已经有好几年了,所以如果这是可以简单解决的问题我也不会感到惊讶.

更新:它明显增加线程无限制,请参阅jconsole的这个图.

他们已经死了,Jim http://i35.tinypic.com/33vnarn.png

java multithreading tomcat quartz-scheduler java-ee

9
推荐指数
1
解决办法
1914
查看次数

AI程序生成段落模式

是否有任何软件或服务或AI程序可以使用不同的词汇表,语法规则等重建英语段落.

我的意思是说,如果源段是

"瓜廖尔是一个靠近占西的好旅游胜地.Jhansi非常有名,因为他们的女王Rani Laxmi Bai(Manikandana)"

任何软件都可以生成其版本或模式

"Rani Laxmi Bai(Manikandana)是Jhansi的女王,离一个好的旅游宫殿Gwalior更近."

或者是其他东西.我知道在人为干预之前不可能100%正确.

design-patterns artificial-intelligence

9
推荐指数
1
解决办法
2393
查看次数

这项计划的效率如何?

一个简单程序的效率(以Big O表示法)是多少,该程序遍历一个二维的int数组并输出每个元素.

以下面的代码为例:

public static void main(String args[])
{
   int[] array = {{1,2,3,4},
                  {5,6,7,8},
                  {9,10,11,12},
                  {13,14,15,16}};

    for(int i = 0; i < array.length; i++)
    {
       for(int j = 0; j < array[i].length; j++)
       {
          System.out.println(array[i][j]);
       }
    }
}
Run Code Online (Sandbox Code Playgroud)

java arrays big-o

9
推荐指数
3
解决办法
1445
查看次数

Google地理编码 - 解析可能以不同方式返回的address_components

我正在使用Google Maps V3 api.我正在提交地址搜索以返回正确的地理编码结果,包括地址,建立名称和lat/lngs.

我的问题是来自地理编码器的响应可以采用不同的格式.它始终遵循相同的结构,但是一些响应对address_components数据结构使用不同的键.

例如,某些搜索会导致:

establishment               -> location name
street_number               -> address street number
route                       -> the street name
locality                    -> the city
administrative_area_level_1 -> the state
postal_code                 -> zip/postal code
Run Code Online (Sandbox Code Playgroud)

然而,如果我要搜索一般区域,例如"Hampton Beach,NH",我会收到:

sublocality                 -> beach name / area
administrative_area_level_3 -> city/town name
administrative_area_level_1 -> the state
postal_code                 -> zip/postal code
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,这两个回答有其不同之处.是否有一个已知的jquery库可用于处理这些不同的响应,以返回可用于人类可读方式的地址组件的数据集?

我会注意到响应也返回一个"formatted_address"类型,它返回它:"Hampton Beach,NH 03842,USA"或"Boston University,1 University Rd,Boston,MA 02215-1407,USA"正如你所看到的,这些也是非常不同的.我可以用逗号分割,但我想使用实际的address_components来实现完美的数据库插入.

javascript google-maps geocoding google-geocoder

9
推荐指数
1
解决办法
7991
查看次数

在JavaScript中实现复杂的决策表

这是JavaScript专家的实现细节问题.

我有一个具有许多字段的UI,其中字段的值以七位输入的值复杂地依赖.当用户看到更多应用程序时,应该为可能定期更改的128个值中的任何一个显示什么?

现在,我已经通过if-then-else梳子将其作为决策树来实现,但是在需求变化下它很脆弱,而且很难做到.

我想到的一种实现方法是创建一个从0x0到0x7F的值数组,然后在每个位置存储一个闭包 -

var tbl; // initialize it with the values
  ...
tbl[0x42] = function (){ doAThing(); doAnotherThing(); }
Run Code Online (Sandbox Code Playgroud)

然后用它来调用它们

tbl[bitsIn]();
Run Code Online (Sandbox Code Playgroud)

这至少使决策逻辑成为一堆任务.

问题:有更好的方法吗?

(更新:神圣的废话,关于'ajax iphone标签'的那条线如何进入那里?难怪它有点令人费解.)

更新

所以发生了什么事?基本上我采取了第四种选择,虽然类似于我检查过的那种.逻辑非常复杂,我最终构建了一个Python程序来在服务器中生成真值表(生成Groovy代码,实际上,主机是Grails应用程序)并将决策逻辑完全移入服务器.现在JavaScript方面只是解释包含各个字段值的JSON对象.

最终,这可能会经历一次迭代,并成为数据库表中的数据,由位向量索引.

桌子驱动部分肯定是要走的路; 显示的具体要求已经有六个新的变化.

javascript

8
推荐指数
2
解决办法
2600
查看次数