在Python中使用BytesIO和markdown而不是open/read有什么优势吗?
考虑到以下准则:在Python中使用BytesIO和markdown而不是open/read有什么优势吗?,python,markdown,stringio,Python,Markdown,Stringio,考虑到以下准则: from markdown import markdown f = open('myfile.md', 'r') html_text = markdown(f.read()) f.close() 使用io.BytesIO和markdownFromFile是否有速度优势或劣势?还是洗衣服 from markdown import markdownFromFile from io import BytesIO s = BytesIO() markdownFromFile(in
from markdown import markdown
f = open('myfile.md', 'r')
html_text = markdown(f.read())
f.close()
使用io.BytesIO和markdownFromFile是否有速度优势或劣势?还是洗衣服
from markdown import markdownFromFile
from io import BytesIO
s = BytesIO()
markdownFromFile(input='myfile.md', output=s)
html_text = s.getvalue()
s.close()
提前感谢您提供的任何信息。最好您自己对其进行基准测试,但仅从外观上看,我看不到使用
BytesIO
的任何优势。与其读取文件并将其直接解析为字符串,不如先将其读取并处理为BytesIO
对象,然后使用BytesIO.getvalue
获取所需的字符串
前者也更容易阅读。可以通过以下方式简化:
with open('myfile.md', 'r') as f:
html_text = markdown(f.read())
你做基准测试了吗?我明天一到办公室就要做基准测试;在家里的笔记本电脑上,把它放在一个流浪汉的盒子里运行似乎不是一个好的沙箱。谢谢!明天我将以我自己的启发为基准,但你的答案完全有道理。作为Python Markdown的开发人员,我完全同意这个答案,但有一个例外:小心,你似乎认为你在处理字节;然而,Markdown库完全支持Unicode(输入和输出)。当然ASCII输入不会有问题,但如果你不考虑这一点,其他任何东西都会有问题。谢谢你的提示,以及你在优秀库Waylan上的所有工作-非常感谢。