python中用os.path.join()得到的路径可以用来读取文件里面的文本内容吗?

forroot,dirs,filesinos.walk(root_dir):forfileinfiles:file_root=os.path.join(root,file... for root, dirs, files in os.walk(root_dir):

for file in files:

file_root = os.path.join(root,file)#把文件路径和文件名结合起来

text = open('abs_file_name','r')

print(text)
结果出来的是这些看不懂的东西,我本来是要读取里面的文本的呀:
<_io.TextIOWrapper name='D:\\GDUFS\\term 6\\Object-oriented Programming\\week 5\\assignment\\animals and plants\\files\\0\\20.plant' mode='r' encoding='cp936'>
<_io.TextIOWrapper name='D:\\GDUFS\\term 6\\Object-oriented Programming\\week 5\\assignment\\animals and plants\\files\\0\\238.plant' mode='r' encoding='cp936'>
<_io.TextIOWrapper name='D:\\GDUFS\\term 6\\Object-oriented Programming\\week 5\\assignment\\animals and plants\\files\\0\\427.plant' mode='r' encoding='cp936'>
请会的亲指教!谢谢!
展开
 我来答
sordking
2015-04-17 · TA获得超过551个赞
知道小有建树答主
回答量:161
采纳率:100%
帮助的人:191万
展开全部
文件不是这样读的,改为:

text = open('abs_file_name','r')

for fr in test.readlines():
print(fr)
追问
谢谢你!请问为什么要用readlines的呢?通常情况下我单用open(r'').read()或者open('', 'r')也是可以的,为什么在上述情况下却不可以的呢?谢谢!
追答
read(): 是读整个文件,将整个文件的内容当成一个字符串处理,以后你不能按行处理文件内容。

readlines():也是读整个文件,但会将文件内容分析成一个行的列表,python可以按行处理其内容。
所以用以上两种都可,但不能直接print(text),须print(text.read())
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lpe234
2015-04-16 · TA获得超过2778个赞
知道小有建树答主
回答量:1250
采纳率:50%
帮助的人:564万
展开全部
print(text.readlines())
追问
可以了!谢谢你!请问为什么要用readlines的呢?通常情况下我单用open(r'').read()或者open('', 'r')也是可以的,为什么在上述情况下却不可以的呢?谢谢!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式