我们可以通过以下方式在头文件中声明一个函数吗?
extern int ap( char[][] );
Run Code Online (Sandbox Code Playgroud)
我们可以在函数中使用char [] []吗?
我有一个类似于以下的数据库模式:
| User | Event | Date
|--------|---------------|------
| 111 | Walked dog | 2009-10-1
| 222 | Walked dog | 2009-10-2
| 333 | Fed Fish | 2009-10-5
| 222 | Did Laundry | 2009-10-6
| 111 | Fed Fish | 2009-10-7
| 111 | Walked dog | 2009-10-18
| 222 | Walked dog | 2009-10-19
| 111 | Fed Fish | 2009-10-21
Run Code Online (Sandbox Code Playgroud)
我想生成一个查询,返回用户在一段时间内执行某些操作的最大次数.例如,给定5天的时间段,用户111遛狗的最大次数是多少?
最明显的解决方案是从某个零点开始并每天前进,总计5天的时间段,然后从所有5天的窗口中取出最大总数.然而,这种方法似乎非常昂贵.
我很感激您的任何建议.
编辑1:
感谢您的评论/答案.回应: - 我正在使用mySQL v5.0 - 每天可能有任意数量的事件(真的是每个时间段) - @Paulo Santos:谢谢,但是就像评论指出的那样,我需要找到一个窗口产生最多的结果,窗口本身可以滑动. - @Mark:这看起来像一个有趣的解决方案,虽然我记得读到mySQL不支持备份或跳过游标.
- …
是否有可能让gdb记录到终端而不是破坏它?例如,我想在某些方法上设置'断点',并且每次调用该方法时都有gdb print self和参数.基本上我想将print语句插入任意位置而不实际重新编译.
谢谢你的任何建议
这是我在这些有用的评论后到目前为止所得到的:
define logFoo
b fooMethod
commands
po self
end
end
Run Code Online (Sandbox Code Playgroud)
但GDB似乎并不喜欢嵌套的end语句.有什么想法吗?
这里有新的git用户.我想使用git,但我在SVN环境中.从我读过的一些书籍和一些简单的试验中,我遇到了一些令人不安的陷阱,我希望能够澄清如何在没有同事想要杀死我的情况下开始.
我希望我的工作流程是:
一个与svn的主干保持同步的主git分支.
本地git分支,我做我的功能和bug工作.
我想经常使用master更新功能分支.
当我准备好时,我想将一个功能分支与master合并,并将其提交回svn.
这是典型的工作流程吗?
最初我使用git merge来合并我的主分支和功能分支.这导致了各种冲突和问题.我后来阅读以避免使用git merge alltogether并坚持使用git rebase.那么,下面的git命令是否正确?
任何建议或建议,以帮助有抱负的git用户生活在一个svn世界将非常感激.谢谢
是否有任何方法可以将组和正则表达式的*特征组合起来,像tokenizer/splitter一样.我试过这个:
my_str = "foofoofoofoo"
pattern = "(foo)*"
result = re.search(pattern, my_str)
Run Code Online (Sandbox Code Playgroud)
我希望我的团队看起来像
("foo", "foo", "foo", "foo")
Run Code Online (Sandbox Code Playgroud)
但事实并非如此.我对此感到惊讶,因为?和组功能一起工作:
my_str= "Mr foo"
pattern = "(Mr)? foo"
result = re.search(pattern, my_str)
Run Code Online (Sandbox Code Playgroud) 我一直在研究一个有点大的Python项目,它有几层功能.由于一些愚蠢的早期决定,我发现我必须修复很多crashers因为较低级别的函数返回了一个我没想到的更高级别函数的类型(通常是None).
在我完成并清理之前,我想知道什么是指示错误条件并在更高功能中处理它们的最pythonic方式?
我一直在做的大部分是如果函数无法完成并返回其预期结果,我将返回None.这有点粗略,因为你最终必须在所有调用它的函数中检查None.
def lowLevel():
## some error occurred
return None
## processing was good, return normal result string
return resultString
def highLevel():
resultFromLow = lowLevel()
if not resultFromLow:
return None
## some processing error occurred
return None
## processing was good, return normal result string
return resultString
Run Code Online (Sandbox Code Playgroud)
我想另一个解决方案可能是抛出异常.有了这个,您仍然可以在调用函数中获得大量代码来处理异常.
似乎没有什么超级优雅.其他人使用什么?在obj-c中,常见的模式是通过引用返回错误参数,然后调用者检查它.
我正在尝试学习一些新的iOS编程模式.我已经阅读了一些关于在iOS 7中添加的UIViewController转换API的内容.它们看起来很酷但是对于看起来更简单的任务也感觉非常沉重.
考虑这个用例:我有一个管理"幻灯片"的自定义容器视图控制器.它包含一系列幻灯片视图控制器,用户可以通过点击按钮向前和向后移动它们.
我可以按如下方式实现此过渡:
private func transitionToViewController(viewController: UIViewController, direction: TransitionDirection = .Forward, animated: Bool = true) {
currentViewController.willMove(toParentViewController: nil)
addChildViewController(viewController)
// ... set up frames, other animation prep ...
contentContainerView.addSubview(comingView)
UIView.animate(duration: 0.5, animations: {
// do the animations
}) { (finished) in
leavingView.removeFromSuperview()
self.currentViewController.removeFromParentViewController()
viewController.didMove(toParentViewController: self)
// final clean up
}
}
Run Code Online (Sandbox Code Playgroud)
新的转换API将如何改善这一点?据我所知,如果您正在滚动自己的容器视图控制器,这些API使用起来会更加复杂(请参阅自定义容器视图控制器转换.
转换API中的值主要用于交互式转换吗?
谢谢你的澄清
与我遇到的类似问题有关: zsh没有重新计算我的shell提示符
有没有办法定义一个shell变量,以便每次调用它时计算它的值?
例如,如果我这样做:
my_date="today is $(date)"
Run Code Online (Sandbox Code Playgroud)
my_date中的值为:今天是2012年8月9日星期四08:06:18
但我希望每次使用my_date时都要执行日期.在链接的帖子中,有人建议将值放在单引号中:
my_date='today is $(date)'
Run Code Online (Sandbox Code Playgroud)
但从不评估任何东西,它只是保持字面上$(日期).
我正在使用zsh 5.0.0
假设我是用objc/swift编写的服务器.客户端正在向我发送大量数据,这实际上是一个很大的utf8编码字符串.作为服务器,我有我的NSInputStream触发事件,说它有数据要读取.我抓住数据并用它构建一个字符串.
但是,如果下一个数据块落在utf8数据中的不幸位置怎么办?喜欢组成的角色.如果你试图将一块不合规的utf8附加到它上面,似乎会弄乱字符串.
有什么方法可以解决这个问题?我当时认为我可以将数据保存为NSData,但是我无论如何都不知道数据何时被接收(想想数据长度在标题中的HTTP).
谢谢你的任何想法.
如何使用Docker迭代开发他们的应用程序?我刚刚开始使用它,我的工作流程很慢,所以我很确定我使用它错了.
我正在关注Youtube上的python机器学习课程,所以我使用Docker来处理python 3.我知道我可以使用virtualenv或VM,但我也想学习Docker,所以请耐心等待.
我的根目录如下所示:
Dockerfile main.py*
Run Code Online (Sandbox Code Playgroud)
我的码头文件:
FROM python
COPY . /src
RUN pip install quandl
RUN pip install pandas
CMD ["python", "/src/main.py"]
Run Code Online (Sandbox Code Playgroud)
和Python文件:
#!/usr/bin/env python
import pandas as pd
import quandl
print("Hello world from main.py")
df = quandl.get("WIKI/GOOGL")
print("getting data frame for WIKI/GOOGL")
print(df.head())
Run Code Online (Sandbox Code Playgroud)
我的工作流程是:
docker build -t myapp .docker run my app python /src/main.py问题:
我怎样才能加速这一切?对于我想要尝试的每一个改变,我最终都会重建.这会导致pip每次获取依赖关系,这需要花费太长时间.
如何从容器中运行的python版本获取交互式shell,而不是编辑python文件并运行它?
如果我希望我的程序写出一个文件,我怎么能在程序完成后从容器中将这个文件带回我的本地系统?
谢谢您的帮助!
编辑:我应该补充一下,这是我一般在Docker中运行一些python代码的教程:https://www.civisanalytics.com/blog/using-docker-to-run-python/