我想在Url中传递一个参数(更新我的URL包含的许多参数之一),如下所示:
httpGet.setURI(new URI(url/user?"nickname"="John")
Run Code Online (Sandbox Code Playgroud)
Python中的ServerSide:
class GetInfo(BaseHandler):
def Get(self):
nickname = self.get_argument("nickname")
gender = self.get_argument("gender")
logging.info(nickname)
logging.info(gender)
application = tornado.web.Application([
(r"/", MainHandler),
(r"/user", GetInfo),
])
Run Code Online (Sandbox Code Playgroud)
服务器告诉我,我不能这样做,因为缺少参数"性别".我能怎么做?
谢谢
我最近开始使用Python 2.6 for Ubuntu Server admin,并且有两个关于冗余的小问题:
首先是进口:它们看起来都像
从类导入类
from class import Class
Run Code Online (Sandbox Code Playgroud)
第二件事是__init__方法:
__init__(self,arg1,...,argn):
self.arg1 = arg1
...
self.argn = argn
Run Code Online (Sandbox Code Playgroud)
有没有办法避免这些重复?
我试图创建一个具有一个或多个子进程的Python 3程序.
Parent进程生成子进程,然后继续自己的商业,然后我想发送一条消息给特定的子进程,捕获它并采取行动.
此外,子进程在等待消息时需要非锁定,它将运行一个自己的循环来保证服务器连接并将任何已接收的消息发送给父进程.
我目前正在寻找python中的多处理,线程,子进程模块,但一直无法找到任何解决方案.
我想要实现的是让程序的主要部分与用户交互,处理用户输入并向用户呈现信息.这将与来自不同服务器的子部件进行异步,从服务器回收消息并从用户向服务器发送正确的消息.然后,子进程将信息发送回主要部分,并将其提交给用户
我的问题是:
我现在有一个形状文件,我想添加值来填充它的颜色
但现在我有一个问题
http://www.qgis.org/pyqgis-cookbook/vector.html#add-features
feat = QgsFeature()
feat.addAttribute(0,"hello")
feat.setGeometry(QgsGeometry.fromPoint(QgsPoint(123,456)))
(res, outFeats) = layer.dataProvider().addFeatures( [ feat ] )
Run Code Online (Sandbox Code Playgroud)
这是点的示例,现在我有多边形和折线
我想知道我是否有多边形如何添加功能到我用python选择的形状文件?
我有一个我管理的Plone网站,我想在Disots of robots.txt中添加一些页面.
似乎Plone会自动生成robots.txt文件.我找不到任何方法来修改它.我还尝试将"robots.txt"文件添加到应用的根目录,但它说"robots.txt已保留"
有没有人知道如何用Plone(v3)修改它?
我正在学习"绝对初学者的Python编程"并且一直很开心.这本书是为Python 2.7编写的(我认为),但我一直在使用Python 3并翻译代码,这是一个有趣的挑战.
我最近遇到了一个问题,我不知道如何修复.在标记为"Pickling Data并将其写入文件"的部分中,您可以运行以下代码:
import cPickle, shelve
print "Pickling lists." variety = ["sweet", "hot", "dill"]
shape = ["whole", "spear", "chip"]
brand = ["Claussen", "Heinz", "Vlassic"]
pickle_file = open("pickles1.dat", "w")
cPickle.dump(variety, pickle_file)
cPickle.dump(shape, pickle_file)
cPickle.dump(brand, pickle_file)
pickle_file.close()
Run Code Online (Sandbox Code Playgroud)
我把它翻译成了这个(对于python 3)
import pickle, shelve
print ("Pickling lists.")
variety = ["sweet", "hot", "dill"]
shape = ["whole", "spear", "chip"]
brand = ["Classen", "Heinz", "Vlassic"]
pickle_file = open("pickles1.dat", "w")
pickle.dump(variety, pickle_file)
pickle.dump(shape, pickle_file)
pickle.dump(brand, pickle_file)
pickle_file.close()
Run Code Online (Sandbox Code Playgroud)
但是,我从IDLE得到这个错误/输出:
Pickling lists.
Traceback (most recent call last):
File …Run Code Online (Sandbox Code Playgroud) 我正在尝试安装pycairo 1.10.0以用于我的自定义构建python 3.1.然而,
sudo /flower/bin/easy_install-3.1 pycairo
Run Code Online (Sandbox Code Playgroud)
失败了
XXX@XXXX:/adventures$ sudo /flower/bin/easy_install-3.1 pycairo
install_dir /flower/lib/python3.1/site-packages/
Searching for pycairo
Reading http://pypi.python.org/simple/pycairo/
Reading http://cairographics.org/pycairo
Best match: pycairo 1.10.0
Downloading http://cairographics.org/releases/pycairo-1.10.0.tar.bz2
Processing pycairo-1.10.0.tar.bz2
error: Couldn't find a setup script in /tmp/easy_install-zeG9HB/pycairo-1.10.0.tar.bz2
Run Code Online (Sandbox Code Playgroud)
事实上,setup.py在上述下载中没有; 相反,INSTALL说:
Install Procedure
-----------------
$ ./waf --help # shows available waf options
$ ./waf configure # use --prefix and --libdir if necessary
# --prefix=/usr --libdir=/usr/lib64 for Fedora 64-bit
$ ./waf build
$ ./waf install
Use
$ python3 ./waf ... …Run Code Online (Sandbox Code Playgroud) 我用C编写了一个库.我使用SWIG为Java,Python等生成绑定.我设法为两种语言编写自定义类型映射等等.我还设法使用我的库(一个自定义协议)并与我在C中编写的服务器进行通信,使用我用Java编写的客户端,以及我用Python编写的客户端.
最近,我遇到了一个多重继承问题,我找到了一个聪明的解决方案.但是,当尝试使用Python 3复制错误时,错误消失了(可能在版本3中解决了).事实是,相同的代码,相同的项目和相同的源将不会运行调用python3二进制文件,但它可以调用python2.7二进制文件.
我收到消息:
ImportError: dynamic module does not define init function (PyInit__pytellapic)
Run Code Online (Sandbox Code Playgroud)
我已经阅读了SWIG文档可能意味着什么,但错误略有不同:
import example
Traceback (most recent call last):
File "<stdin>", line 1, in ?
ImportError: dynamic module does not define init function (init_example)
Run Code Online (Sandbox Code Playgroud)
说:
当为共享对象文件指定错误名称时,几乎总是会导致此错误.例如,如果您创建了一个文件example.so而不是_example.so,则会出现此错误.或者,如果模块的名称与%module指令提供的模块名称不一致,则可能会出现此错误.仔细检查接口以确保模块名称和共享对象文件名匹配.导致此错误的另一个可能原因是在创建扩展模块时忘记将SWIG生成的包装器代码与应用程序的其余部分链接起来.
老实说,我认为这个可能的原因不适用于我的模块,因为它应该是2.7和3版python的错误,而不仅仅是Python 3.
我很感激任何建议,但考虑到SWIG似乎是一个过时的项目,我可能会继续使用Python 2.7与提到的"黑客".
最好的祝福,
在Windows 7中使用python 3.2我在IDLE中得到以下内容:
>>compile('pass', r'c:\temp\??\module1.py', 'exec')
UnicodeEncodeError: 'mbcs' codec can't encode characters in position 0--1: invalid character
Run Code Online (Sandbox Code Playgroud)
任何人都可以解释为什么编译语句尝试使用mbcs转换unicode文件名?我知道sys.getfilesystemencoding在Windows中返回'mbcs',但我认为在提供unicode文件名时不会使用它.
例如:
f = open(r'c:\temp\??\module1.py')
Run Code Online (Sandbox Code Playgroud)
作品.
要进行更完整的测试,请在utf8编码文件中保存以下内容,并使用标准python.exe 3.2版运行它
# -*- coding: utf8 -*-
fname = r'c:\temp\??\module1.py'
# I do have the a file named fname but you can comment out the following two lines
f = open(fname)
print('ok')
cmp = compile('pass', fname, 'exec')
print(cmp)
Run Code Online (Sandbox Code Playgroud)
输出:
ok
Traceback (most recent call last):
File "module8.py", line 6, in <module>
cmp = compile('pass', fname, 'exec')
UnicodeEncodeError: …Run Code Online (Sandbox Code Playgroud) 我已经阅读了很多关于Python文档中的对象的内容,它们在某些方面区分了这两个:
任何人都可以向我解释这个"旧式(或经典)和新式".
我无法弄清楚这条线试图说的是什么:
"对于新式类,方法解析顺序动态变化以支持对super()的协作调用".