Dib*_*ble 2 python csv visual-studio-code
import csv
with open('innovators.csv', 'w', newline='') as file:
writer = csv.writer(file)
writer.writerow(["SN", "Name", "Contribution"])
writer.writerow([1, "Linus Torvalds", "Linux Kernel"])
Run Code Online (Sandbox Code Playgroud)
我得到的输出:
SN, Name, Contribution
1, Linus Torvalds, Linux Kernel
Run Code Online (Sandbox Code Playgroud)
我想要的输出:
SN, Name, Contribution
1, Linus Torvalds, "Linux Kernel"
Run Code Online (Sandbox Code Playgroud)
所以,我尝试了
writer.writerow([1, "Linus Torvalds", "\"Linux Kernel\""])
Run Code Online (Sandbox Code Playgroud)
但这只是使它成为:
1, Linus Torvalds, ""Linux Kernel""
Run Code Online (Sandbox Code Playgroud)
我正在使用 Visual Studio Code 和 python 3,不知道如何让它输出带双引号的单词
您可以使用 csv.writer 的引用参数来控制引用的级别。如果您只想引用所有值,请使用csv.QUOTE_ALL。
引用级别:
csv.QUOTE_ALL
指示 writer 对象引用所有字段。
csv.QUOTE_NONNUMERIC
指示编写器对象引用所有非数字字段。
指示读者将所有未引用的字段转换为 float 类型。
csv.QUOTE_MINIMAL(默认)
指示编写器对象仅引用包含特殊字符(例如分隔符、quotechar 或行终止符中的任何字符)的字段。
csv.QUOTE_NONE
指示编写器对象从不引用字段。
例子:
import csv
with open('innovators.csv', 'w', newline='') as file:
writer = csv.writer(file, quoting=csv.QUOTE_NONNUMERIC)
writer.writerow(["SN", "Name", "Contribution"])
writer.writerow([1, "Linus Torvalds", "Linux Kernel"])
Run Code Online (Sandbox Code Playgroud)
输出:
"SN","Name","Contribution"
1,"Linus Torvalds","Linux Kernel"
Run Code Online (Sandbox Code Playgroud)
请注意,在输出中,所有字符串都被引用,而数字没有被引用。
如果使用quoting=csv.QUOTE_MINIMAL则输出如下。所有字符串都没有换行符或转义字符,因此不需要引号。
SN,Name,Contribution
1,Linus Torvalds,Linux Kernel
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4536 次 |
| 最近记录: |