小编Ada*_*obs的帖子

使用多个缩进在Python中保持79个字符行限制

我知道要编写好的Python代码,我应该保持我的行不超过79个字符.

这在大多数时候都很好,但如果我有各种嵌套的for循环和if语句本身嵌套在一个类中,我可能很容易发现我有5或6个缩进(即20-24个字符,如果我缩进4个在我开始之前留出时间.然后79字符限制变得相当棘手.我知道各种技巧,如括号内的隐式延续,并使用括号来连接长字符串,但即便如此,它也有点繁琐.

那么,你们的大师们建议什么?

缩进2个空格而不是4个空格会有所帮助,但这被认为是好风格吗?不确定它是否有助于使我的代码更具可读性,并且我注意到PEP8说要使用4个空格.

如果我发现我有多个级别的缩进,那么也许我签署的是我写的是错误的代码?如果是这样,任何有用的提示或技巧,以避免过多的嵌套?

我是否正确地试图坚持79个字符的建议?

或者我是否只需要习惯于多行中的大量语句?

谢谢亚当

python coding-style

8
推荐指数
1
解决办法
1500
查看次数

在同一台服务器上使用 python 2 和 python 3 的 WSGI 应用程序?

我已经有一个用 Python 2 编写的 Web 应用程序,它运行在 WSGI(特别是 OpenERP Web 服务器)上。

我想编写一个新的 Web 应用程序,它可以在同一台服务器上运行(Ubuntu 上的 Apache 2),但使用 WSGI 和 Python 3。这两个应用程序将在不同的端口上。

那可能吗?

python apache wsgi

5
推荐指数
1
解决办法
1675
查看次数

如何使用Python 3处理从Web表单上传的csv文件?

我正在尝试编写一些Python 3代码来处理通过Web表单(使用wsgi)上传的csv文件。我设法将文件上传了,但是我在努力使用Python的csv工具来处理它。这似乎与字节vs字符串有关。

这是我尝试过的:

import cgi, csv
form = cgi.FieldStorage(fp=environ['wsgi.input'],environ=environ)
upload = form['upload']
file = upload.file
data = csv.DictReader(file)
for line in data:
    #Do stuff here to process csv file
Run Code Online (Sandbox Code Playgroud)

它到达“用于数据行”的位置,然后出现以下错误消息:

_csv.Error: iterator should return strings, not bytes (did you open the file in text mode?)
Run Code Online (Sandbox Code Playgroud)

所以问题是我的文件是二进制文件,但是csv需要一个字符串文件,对吗?知道我该如何解决吗?

我想到的一种可能的解决方法是,仅读取文件的行而不使用csv模块并手动处理数据,这虽然可行,但似乎有点麻烦。如果可能的话,最好使用Python的csv模块的功能。

从中上传文件的Web表单具有属性

enctype="multipart/form-data"
Run Code Online (Sandbox Code Playgroud)

上传文件需要我收集的内容。

csv wsgi python-3.x

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

标签 统计

python ×2

wsgi ×2

apache ×1

coding-style ×1

csv ×1

python-3.x ×1