Python文件读取的3种方法及路径转义

yipeiwu_com7年前Python基础

1.文件的读取和显示

方法1:

复制代码 代码如下:

 f=open(r'G:\2.txt')
 print f.read()
 f.close()

方法2:
 
复制代码 代码如下:

 try:
     t=open(r'G:\2.txt')
     print t.read()
 finally:
     if t:
        t.close()

方法3:
复制代码 代码如下:

 with open(r'g:\2.txt') as g:
     for line in g:
         print line

python虽然每次打开文件都要关闭,但是可能会由于异常导致未关闭,因此我们最好是手动关闭,方法二通过异常处理来进行,方法三通过with来自动调用close方法,最简便。
这里open的地址需要注意,如果我们写成open('g:\2.txt','r')运行时会报错:IOError: [Errno 22] invalid mode ('r') or filename: 'g:\x02.txt'。这里是由于路径被转义了,因此可以用'/'代替'\':f=open('g:/2.txt','r')或者加上r'path':f=open(r'g:\2.txt','r')就可以了。
这里通过python自带的ide-GUI测试一下是怎样转义的:
复制代码 代码如下:

 Python 2.7.6 (default, Nov 10 2013, 19:24:18) [MSC v.1500 32 bit (Intel)] on win32
 Type "copyright", "credits" or "license()" for more information.
 >>> f='g:\a.txt' 
 >>> print f
 g:.txt  #这里被转义成一个特殊符号了。
 >>> f1='g:\\a.txt'
 >>> print f1
 g:\a.txt  #没被转义
 >>> r'g:\a.txt'
 'g:\\a.txt'  #没被转义
 >>> 'g:\a.txt'
 'g:\x07.txt'  #这里将a转义
 >>> 'g:\\a.txt'
 'g:\\a.txt'
 >>>
 

相关文章

pytorch 在网络中添加可训练参数,修改预训练权重文件的方法

实践中,针对不同的任务需求,我们经常会在现成的网络结构上做一定的修改来实现特定的目的。 假如我们现在有一个简单的两层感知机网络: # -*- coding: utf-8 -*- im...

windows下Anaconda的安装与配置正解(Anaconda入门教程) 原创

windows下Anaconda的安装与配置正解(Anaconda入门教程) 原创

一、下载anaconda 第一步当然是下载anaconda了,官方网站的下载需要用迅雷才能快点,或者直接到清华大学镜像站下载。当然这里推荐【听图阁-专注于Python设计】下载,下载地址...

python实现探测socket和web服务示例

操作系统:linux软件环境:Python 2.7.3 用法:复制代码 代码如下:$ ./MonSocket.py # This is check the URI or Socket...

python实现简单socket程序在两台电脑之间传输消息的方法

本文实例讲述了python实现简单socket程序在两台电脑之间传输消息的方法。分享给大家供大家参考。具体分析如下: python开发简单socket程序在两台电脑之间传输消息,分为客户...

Flask中endpoint的理解(小结)

在flask框架中,我们经常会遇到endpoint这个东西,最开始也没法理解这个到底是做什么的。最近正好在研究Flask的源码,也就顺带了解了一下这个endpoint 首先,我们看一个...