我有一个文件myfile.txt。
我有以下脚本:
#!/usr/bin/python
import markdown
f = open('myfile.txt', 'r')
f.read()
htmlmarkdown=markdown.markdown(f)
我得到了:
AttributeError:'file'对象没有属性'strip'
我应该做些什么来取得成功?
答案 0 :(得分:5)
试试这个:
f = open('myfile.txt', 'r')
htmlmarkdown=markdown.markdown( f.read() )
答案 1 :(得分:1)
pyDog的回答是正确的。你的问题是f是一个文件对象。你需要将markdown传递给一个字符串。只调用f.read()会将文件光标放在文件的末尾,但不会将文件内容放在您需要的字符串中。
f = open('myfile.txt', 'r')
fileString = f.read()
htmlmarkdown=markdown.markdown( fileString )
如果你看一下你得到的错误:
AttributeError: 'file' object has no attribute 'strip'
这是因为您将'file'对象(即f)传递给markdown,它试图调用字符串函数strip(),这对'file'对象没有意义。