我有一个包含整数的字符串(已从文件中读取).
我正在尝试将其转换string为int使用strconv.ParseInt(). ParseInt要求我提供一个bitsize(位大小0,8,16,32和64对应于int,int8,int16,int32和int64).
从文件读取的整数很小(即它应该适合普通的int).但是,如果我传递0的bitsize,我会得到类型的结果int64(可能是因为我在64位操作系统上运行).
为什么会这样?我如何获得正常的int?(如果有人对何时以及为什么我应该使用不同的int类型进行快速入门,那就太棒了!)
编辑:我可以使用将int64转换为普通的int int([i64_var]).但我仍然不明白为什么ParseInt()在我请求0的位数时给我一个int64.
我最近发现自己处于这种情况的几次,而且我不确定如何最好地处理它.
所以我有一个我正在贡献的git存储库的分支.我让我的主分支与上游主分支同步.
当我想开发一个新功能,bugfix等时,我会从我的主人那里创建一个分支并做任何工作.当我完成后,我合并了在此期间对上游主服务器所做的任何更改,然后从我的feature/bugfix分支向上游主服务器发送一个pull请求.
现在,当我等待拉取请求被接受时,我想要处理稍微不同的事情.但是,新功能工作需要我刚刚发送了pull请求的bugfix/new功能.我需要建立它.
如何以可以处理延续的方式分支/合并/处理分支,同时在第一个拉取请求被接受到主服务器后,仍然能够以干净的方式合并/拉取我的更改中的请求?
这都是使用Github,虽然我想这个答案一般适用于Git.
我有一些时间戳存储为Postgres类型timestamp without time zone.
我将使用时间戳2013-12-20 20:45:27作为示例.我打算这表示UTC时间戳.
在psql中,如果我运行查询SELECT start_time FROM table_name WHERE id = 1,我会按预期返回该时间戳字符串:2013-12-20 20:45:27.
但是,如果在我的Node应用程序中,我使用node-postgres库来运行相同的查询,我会在本地时区获得一个时间戳:Fri Dec 20 2013 20:45:27 GMT-0600 (CST).这是一个Javascript日期对象,但它已经存储为该时区.我真正想要的是一个代表的日期对象(甚至只是一个字符串)2013-12-20 20:45:27 GMT+0000.我已经知道这次是UTC.
我已经尝试将postgresql.conf文件中的timezone param设置为:timezone = 'UTC',结果没有区别.
我究竟做错了什么?
编辑
问题似乎出现在这个文件中:https://github.com/brianc/node-postgres/blob/master/lib/types/textParsers.js
如果从Postgres返回的日期字符串没有指定时区(Z或者+06:30,那么它只是构造一个JavaScript日期对象,我相信它只包含本地时区.我要么将我的应用程序更改为存储DB中的时区或覆盖此转换器.
我正在尝试测试我正在开发的webapp.我正在使用针对Firefox 22.0的Firefox驱动程序.
有一次,可能会弹出一个模态对话框(一个Javascript提示符()).如果是,我想输入一些文本,然后将其关闭(单击确定).
这是相关的代码:
try:
if button.text == "Run":
button.click()
except UnexpectedAlertPresentException:
alert = self.driver.switch_to_alert()
print alert.text
alert.send_keys('8080')
alert.dismiss()
Run Code Online (Sandbox Code Playgroud)
在UnexpectedAlertPresentException 被抛出.但是,一旦它尝试执行print alert.text,我得到:
`NoAlertPresentException: Message: u'No alert is present'`.
Run Code Online (Sandbox Code Playgroud)
如果我删除了print语句,它就会爆炸alert.send_keys:
`WebDriverException: Message: u'fxdriver.modals.find_(...) is null'`
Run Code Online (Sandbox Code Playgroud)
我不明白.不是NoAlertPresentException通过定义矛盾于UnexpectedAlertPresentException这被抛出,并引起了除块中首先执行?
编辑:另外,我不能为我的生活找到的任何文件UnexpectedAlertPresentException中http://selenium.googlecode.com/svn/trunk/docs/api/py/index.html#documentation
编辑2:这就是我现在拥有的:
try:
if button.text == "Run":
button.click()
alert = self.driver.switch_to_alert()
alert.send_keys('1111')
alert.dismiss()
except NoAlertPresentException:
pass
Run Code Online (Sandbox Code Playgroud)
但是,我仍然看到这个:
WebDriverException: Message: u'fxdriver.modals.find_(...) is null'
Run Code Online (Sandbox Code Playgroud)
就行了alert.send_keys('8080').我想我不明白为什么switch_to_alert()不扔,NoAlertPresent如果没有警报......这是我假设的WebDriverException指示.
我想弄清楚是否有办法嵌套 Sphinx 扩展指令。我有一些很好用的自定义节点类型,但我希望生成的 HTML 具有更大的灵活性。
这是我要完成的示例:
假设我有一个指令来创建一个文本框和按钮来触发一些 JavaScript。这很好用 - 我可以把它放在我的 reST 文件中:
.. myDirective:: name
:opt1: val
content
Run Code Online (Sandbox Code Playgroud)
现在,我希望能够在输出中使用 jQuery 创建选项卡式界面。我有一个节点类型,它创建发生这种情况所需的原始 HTML/JavaScript。
我希望能够做的是为选项卡节点提供 1 个或多个 myDirective(或其他指令)的实例,并将每个实例放入另一个选项卡中。像这样的东西:
..tabbedInterface::
.. myDirective:: name1
:op1: val1
content
.. myDirective:: name2
:op1: val1
content
Run Code Online (Sandbox Code Playgroud)
显然这是一个非常具体的情况,但这通常是我想要完成的 - 嵌套指令。
我正在做一个涉及数据收集和日志记录的项目.我有两个运行的线程,一个集合线程和一个日志记录线程,都在main中启动.我正在尝试使用Ctrl-C允许程序正常终止.
我正在使用a threading.Event向线程发出信号以结束它们各自的循环.它可以正常停止该sim_collectData方法,但它似乎没有正确停止该logData线程.该Collection terminated打印语句永远不会执行,程序公正摊位.(它没有结束,只是坐在那里).
第二个while循环logData是确保记录队列中的所有内容.目标是让Ctrl-C立即停止收集线程,然后允许日志记录线程完成清空队列,然后才完全终止程序.(现在,数据刚刚被打印出来 - 最终它将被记录到数据库中).
我不明白为什么第二个线程永远不会终止.我基于我在这个答案上所做的事情:在一段时间后停止一个线程.我错过了什么?
def sim_collectData(input_queue, stop_event):
''' this provides some output simulating the serial
data from the data logging hardware.
'''
n = 0
while not stop_event.is_set():
input_queue.put("DATA: <here are some random data> " + str(n))
stop_event.wait(random.randint(0,5))
n += 1
print "Terminating data collection..."
return
def logData(input_queue, stop_event):
n = 0
# we *don't* want to loop based on queue size because …Run Code Online (Sandbox Code Playgroud) 我有一个非常简单的Go项目,我正在尝试重组,以便它遵循正常的Go项目结构(所以我可以运行go build).
我目前有两个源文件,都有package main.所有文件,包括我的程序在运行时需要的一些文本配置文件.
所以现在,它看起来像:
<project_name>
- main.go
- source2.go
- config_file.txt
Run Code Online (Sandbox Code Playgroud)
go build当我在这个目录中时,我可以运行,它会创建一个二进制文件(命名<project_name>.这样可以正常工作,但我想将其设置为更好地遵循Go标准包结构(特别是以便Intellij IDEA将其识别为一个有效的项目).
现在,我project_name>在Git中拥有整个< 目录,我想保持这种方式.
我尝试将源文件放在一个名为的文件夹中src,但后来go build说没有任何源文件可以编译.
我应该如何构建这个?
编辑:
弄清楚把东西放进去的问题src/:我需要运行go build <project_name>.
我仍然想知道是否有办法在没有全局GOPATH的情况下建立项目.我将所有项目都放在一个文件夹下,每个项目都有一个子文件夹(并非所有项目都是Go项目).我想保留那个系统.
我想要的是:
projects/
- project 1/
- src/
- bin/
- pkg/
- project 2/
- src/
- bin/
- pkg/
Run Code Online (Sandbox Code Playgroud)
然后我希望能够运行go build <project_name>(当我在该项目的目录中时)并让它编译该项目.那可能吗?
以下是我的代码中的相关摘录:
func main() {
quit := make(chan int)
readyQueue := make(chan Proc)
runQueue := make(chan Proc)
waitQueue := make(chan Proc)
procList := getInitialProcList()
fmt.Println(procList)
for _, proc := range(procList) {
switch {
case proc.Status == READY:
readyQueue <- proc
tick(quit, readyQueue, runQueue, waitQueue)
case proc.Status == RUN:
runQueue <- proc
tick(quit, readyQueue, runQueue, waitQueue)
case proc.Status == WAIT:
waitQueue <- proc
tick(quit, readyQueue, runQueue, waitQueue)
}
}
<-quit // blocks to keep main thread alive
}
func tick(quit chan int, …Run Code Online (Sandbox Code Playgroud) 为模糊的标题道歉 - 我想不出一种简洁地总结这个问题的方法.
这是交易.我有一个Node控制器,它必须执行一些顺序数据库操作,如下所示:
0. Given a surveyId
1. Find all entries in the question table, where question.surveyId = surveyId.
2. For each row in the question table returned by the previous query:
a) Find all entries in the `answer` table, where answer.questionId = question.id
b) For each row in the answer table returned by the previous query:
(i) Find the count of all entries in the vote table where vote.answerId = answer.id
Run Code Online (Sandbox Code Playgroud)
控制器需要返回一个对象,该对象包含每个answerId在投票表中有条目的次数.它看起来像{1:9, 2:21, 3:0},其中1,2,3是答案ID,9,21和0是投票表中具有该答案ID的行数.
我一直在使用Q库来避免真正深度嵌套的回调.我有一个runQuery实用程序方法,它返回一个promise并在数据库IO完成后解析它.
现在,我有一些看起来像: …
我刚刚开始使用 XCode。我已经安装了XVim插件来提供 Vim 键绑定。但是,我缺少打开相关行号的能力。在 vim 中,这是通过 完成的:set relativenumber,而在 Visual Studio 中,有一个插件。
XCode 5 有这样的东西吗?
我正在尝试学习如何使用 Jison(使用 Bison 语法的 Javascript 解析器生成器)。
我有一些看起来像这样的代码:
a: "{{index()}}"
b: "{{blah(2, 'aba')}}"
Run Code Online (Sandbox Code Playgroud)
我正在尝试创建一个解析器,index()如果通过 stringa和blah(2, 'aba')如果通过 string将返回b。(本质上,我需要解析包含方法调用的字符串)。
我一直在尝试适应 Jison 提供的示例,但由于我对解析的工作原理缺乏了解而受到阻碍!
这是我的语法文件:
/* lexical grammar */
%lex
%%
\s+ /* skip whitespace */
[a-zA-Z0-9]+ return 'STR'
"{{" return '{{'
"}}" return '}}'
<<EOF>> return 'EOF'
. return 'INVALID'
/lex
/* operator associations and precedence */
%token '{{' '}}'
%start expressions
%% /* language grammar */
expressions
: e EOF
{ typeof console !== 'undefined' …Run Code Online (Sandbox Code Playgroud)