[英]Python: Misleading Documentation of csv module Dialect class
文檔說明Dialect.delimiter
的默認值是','
。 但是,當我嘗試打印時,它返回None
。
>>> print(csv.Dialect.delimiter)
None
Dialect.delimiter用於分隔字段的單字符字符串。 它默認為','。
這是您創建自己的方言時的默認值。
import csv
csv.register_dialect('my_dialect')
dialect = csv.get_dialect('my_dialect')
print(dialect.delimiter)
這是您創建新Dialect
時的默認值。 您可以使用csv.get_dialect()
獲取方言實例(如果您使用的是Python 3.x, csv.get_dialect()
並使用csv.register_dialect
注冊您自己的csv.register_dialect
。 您也可以將Dialect
子類化並繼續使用它。
如果您只是閱讀該行,文檔可能看起來不清楚,但您可以看到以下幾行:
為了便於指定輸入和輸出記錄的格式,將特定格式參數組合在一起成為方言。 方言是Dialect類的子類 ,具有一組特定方法和單個validate()方法。
在REPL中執行簡單的help(csv.Dialect)
確認在使用此類時必須進行子類化。
class Dialect(builtins.object)
| Describe a CSV dialect.
|
| This must be subclassed (see csv.excel). Valid attributes are:
| delimiter, quotechar, escapechar, doublequote, skipinitialspace,
| lineterminator, quoting.
|
| Methods defined here:
|
| __init__(self)
| Initialize self. See help(type(self)) for accurate signature.
|
| ----------------------------------------------------------------------
| Data descriptors defined here:
|
| __dict__
| dictionary for instance variables (if defined)
|
| __weakref__
| list of weak references to the object (if defined)
|
| ----------------------------------------------------------------------
| Data and other attributes defined here:
|
| delimiter = None
|
| doublequote = None
|
| escapechar = None
|
| lineterminator = None
|
| quotechar = None
|
| quoting = None
|
| skipinitialspace = None
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.