这个来自Google App Engine文档的示例程序在引用self时意味着什么?我在哪里可以查找哪些方法(例如self.response ...)?
from google.appengine.api import users
from google.appengine.ext import webapp
from google.appengine.ext.webapp.util import run_wsgi_app
class MainPage(webapp.RequestHandler):
def get(self):
user = users.get_current_user()
if user:
self.response.headers['Content-Type'] = 'text/plain'
self.response.out.write('Hello, ' + user.nickname())
else:
self.redirect(users.create_login_url(self.request.uri))
application = webapp.WSGIApplication(
[('/', MainPage)],
debug=True)
def main():
run_wsgi_app(application)
if __name__ == "__main__":
main()
Run Code Online (Sandbox Code Playgroud) 我正在使用FileInputStream将文件内容放入字节数组的文本文件中读取.然后我使用新的String(byte)将字节数组转换为String.
一旦我有了我正在使用的字符串String.split("\n")将文件拆分成一个String数组,然后获取该字符串数组并通过执行a String.split(",")并在Arraylist中保存内容来解析它.
我有一个200MB +的文件,当我使用1GB内存启动JVM时,内存不足.我知道我必须在某处正确地做某事,我只是不确定我解析的方式是不正确的还是我正在使用的数据结构.
它也花了我大约12秒来解析文件似乎很多时间.任何人都可以指出我可能在做什么导致我内存不足以及可能导致我的程序运行缓慢的原因?
该文件的内容如下所示:
"12334", "100", "1.233", "TEST", "TEXT", "1234"
"12334", "100", "1.233", "TEST", "TEXT", "1234"
.
.
.
"12334", "100", "1.233", "TEST", "TEXT", "1234"
Run Code Online (Sandbox Code Playgroud)
谢谢
我最近在Linux桌面上经历了这个小小的noob冒险:
为什么我会为此堕落?因为我曾经是一个Mac用户,在那里我将创建一个加密的稀疏磁盘映像,将我的文件放入其中,然后卸载.我可以将这个文件移动到任何地方,将其放到任何mac,mount,输入密码和ta-da!只要我记得密码,一切都很好.
任何人都知道如何用Linux做这样的事情?
(我希望这与SOF的编程有关......这对我的编程工作来说很重要!)
我注意到在Windows 7中,与XP不同,如果程序崩溃,我在Visual Studio 2008中调试,我没有选择调试程序.相反,它只是说该程序崩溃,微软正在寻找解决方案.
现在,如果我的程序抛出异常,我无法返回VS 2008中的调试会话,程序就退出了.有没有解决的办法?
编辑:这是旧的调试窗口在XP中的样子,但我无法在Win7中得到它,现在无法调试我的程序:
调试窗口http://www.scalemax.com/tlsupport/Crash_files/image006.jpg
我正在使用boost字符串库,并且刚刚遇到了分割方法的简单易用性.
string delimiters = ",";
string str = "string, with, comma, delimited, tokens, \"and delimiters, inside a quote\"";
// If we didn't care about delimiter characters within a quoted section we could us
vector<string> tokens;
boost::split(tokens, str, boost::is_any_of(delimiters));
// gives the wrong result: tokens = {"string", " with", " comma", " delimited", " tokens", "\"and delimiters", " inside a quote\""}
Run Code Online (Sandbox Code Playgroud)
这将是美好而简洁的...但它似乎不适用于引号,而是我必须做类似以下的事情
string delimiters = ",";
string str = "string, with, comma, delimited, tokens, \"and delimiters, inside a quote\"";
vector<string> tokens; …Run Code Online (Sandbox Code Playgroud) 我正在开发一个在线活动票务系统,用户可以自行打印他的票据并出现在将被扫描的事件(条形码),理想情况下,这个人会进入.我的问题是如何创建一个满足以下要求的"票证代码":
数据范围非常小,4天内只有大约20个活动,每个活动约5,000张门票(约100,000个不同的门票代码)
现在我有几个字段没有打印在故障单上,用户不知道我可以使用它来编码部分"票证代码",所以我可以使用EventId,OrderId,EventDate和一些盐来创建一个小的"哈希"部分代码(想法?),但我仍然坚持顺序或GUID(太长)的票证ID
那么关于如何做到这一点的任何想法或指示?
我知道如何在常规Python解释器会话中重新加载常规Python模块.这个问题记录了如何做得很好:
出于某种原因,我在Django的"manage.py shell"解释器会话中遇到了麻烦.要重新创建我的问题,请启动此处的基本Django教程:
创建"民意调查"应用程序和"民意调查"类后,通过"manage.py shell"启动解释器并将"民意调查"应用程序导入其中.
import polls.models as pm
Run Code Online (Sandbox Code Playgroud)
创建一个新的"民意调查"对象:
p = pm.Poll()
Run Code Online (Sandbox Code Playgroud)
到目前为止一切顺利.现在回到您的源代码并添加任意方法或属性.例如,我添加了:
def x(self):
return 2+2
Run Code Online (Sandbox Code Playgroud)
现在回到解释器并"重新加载"模块:
reload(pm)
Run Code Online (Sandbox Code Playgroud)
现在尝试使用您的新方法或属性:
p1 = pm.Poll()
p1.x()
Run Code Online (Sandbox Code Playgroud)
你会收到这条消息:
'Poll' object has no attribute 'x'
Run Code Online (Sandbox Code Playgroud)
是什么赋予了?我还尝试重新运行import命令,使用不同的语法导入模块,删除对任何"Poll"对象或"Poll"类的所有引用.我也尝试过使用IPython解释器和普通的Python(v2.6)解释器.似乎没什么用.
在常规解释器会话中使用与任意Python模块相同的技术可以很好地工作.我似乎无法让它在Django的"shell"会话中工作.
顺便说一句,如果它有任何区别,我在Ubuntu 9.04机器上这样做.
从带有imagemagick的命令行,您可以使用:
convert dragon.gif -resize 64x64^ -gravity center -extent 64x64 fill_crop_dragon.gif
Run Code Online (Sandbox Code Playgroud)
调整大小然后裁剪图像,使其尽可能地填充该区域.
我如何从Perl的Image :: Magick中做到这一点?
如何删除Java servlet中的cookie?
我试过这个:http: //www.jguru.com/faq/view.jsp?EID = 42225
编辑:以下现在成功运作它似乎是以下的组合:
response.setContentType("text/html");
Run Code Online (Sandbox Code Playgroud)
和
cookie.setMaxAge(0);
Run Code Online (Sandbox Code Playgroud)
在我做之前:
//remove single signon cookie if it hasn't been validated yet
response.setContentType("text/html");
Cookie cookie = new Cookie(SSORealm.SSO_COOKIE_NAME, "");
cookie.setDomain(SSORealm.SSO_DOMAIN);
cookie.setMaxAge(-1);
cookie.setPath("/");
cookie.setComment("EXPIRING COOKIE at " + System.currentTimeMillis());
response.addCookie(cookie);
Run Code Online (Sandbox Code Playgroud)
根据文档关闭浏览器时,cookie会过期.
负值表示cookie不会持久存储,并在Web浏览器退出时被删除.零值会导致cookie被删除.
要使Cookie过期的完整工作代码段是:
//remove single signon cookie if it hasn't been validated yet
response.setContentType("text/html");
Cookie cookie = new Cookie(SSORealm.SSO_COOKIE_NAME, "");
cookie.setDomain(SSORealm.SSO_DOMAIN);
cookie.setMaxAge(0);
cookie.setPath("/");
cookie.setComment("EXPIRING COOKIE at " + System.currentTimeMillis());
response.addCookie(cookie);
Run Code Online (Sandbox Code Playgroud)