python-文件

一: 文件

1.1:

 .exe : 可执行文件

 .avi :视频的格式

 .pm4 :视频的格式

 .jpg :图片的格式

 .ppt :Power Point的专用格式

 .txt :

help(open) 可以查到关于它的使用

   Character Meaning
    --------- ---------------------------------------------------------------
    'r'       open for reading (default)
    'w'       open for writing, truncating the file first
    'x'       create a new file and open it for writing
    'a'       open for writing, appending to the end of the file if it exists
    'b'       binary mode
    't'       text mode (default)
    '+'       open a disk file for updating (reading and writing)
    'U'       universal newline mode (deprecated)
    ========= ===============================================================



1.2:使用open打开一个文件,会返回一个文件对象,我们就可以读取/修改文件


读取:

>>> a = open('/Users/hongbaodai/Desktop/TXT.txt')
>>> a
<_io.TextIOWrapper name='/Users/hongbaodai/Desktop/TXT.txt' mode='r' encoding='US-ASCII'>
>>> 

>>> c = open('/Users/hongbaodai/Desktop/TE.rtf')
>>> c.read()
'{\\rtf1\\ansi\\ansicpg936\\cocoartf1504\\cocoasubrtf830\n{\\fonttbl\\f0\\fnil\\fcharset0 Menlo-Regular;\\f1\\fnil\\fcharset134 PingFangSC-Regular;\\f2\\fswiss\\fcharset0 ArialMT;\n}\n{\\colortbl;\\red255\\green255\\blue255;\\red100\\green56\\blue32;\\red255\\green255\\blue255;\\red38\\green38\\blue38;\n\\red255\\green255\\blue255;\\red19\\green87\\blue181;\\red39\\green78\\blue192;}\n{\\*\\expandedcolortbl;;\\csgenericrgb\\c39216\\c21961\\c12549;\\csgray\\c100000;\\cssrgb\\c20000\\c20000\\c20000;\n\\cssrgb\\c100000\\c100000\\c100000;\\cssrgb\\c7451\\c43137\\c76078;\\cssrgb\\c20000\\c40000\\c80000;}\n\\paperw11900\\paperh16840\\margl1440\\margr1440\\vieww20340\\viewh15660\\viewkind0\n\\deftab674\n\\pard\\tx674\\pardeftab674\\pardirnatural\\partightenfactor0\n\n\\f0\\fs28 \\cf2 \\cb3 \\CocoaLigature0 \\\n\\\n\\\n\\pard\\pardeftab720\\partightenfactor0\n\n\\f1 \\cf4 \\cb5 \\expnd0\\expndtw0\\kerning0\n\\CocoaLigature1 \\\'ce\\\'c4\\\'d5\\\'c2\\\'a3\\\'ac\n\\f2 1984\n\\f1 \\\'c4\\\'ea\n\\f2 6\n\\f1 \\\'d4\\\'c2\n\\f2 26\n\\f1 \\\'c8\\\'d5\\\'b3\\\'f6\\\'c9\\\'fa\\\'d3\\\'da{\\field{\\*\\fldinst{HYPERLINK "https://baike.baidu.com/item/%E9%99%95%E8%A5%BF%E7%9C%81"}}{\\fldrslt \\cf6 \\\'c9\\\'c2\\\'ce\\\'f7\\\'ca\\\'a1}}{\\field{\\*\\fldinst{HYPERLINK "https://baike.baidu.com/item/%E8%A5%BF%E5%AE%89%E5%B8%82"}}{\\fldrslt \\cf6 \\\'ce\\\'f7\\\'b0\\\'b2\\\'ca\\\'d0}}\\\'a3\\\'ac\\\'d6\\\'d0\\\'b9\\\'fa\\\'c4\\\'da\\\'b5\\\'d8{\\field{\\*\\fldinst{HYPERLINK "https://baike.baidu.com/item/%E7%94%B7%E6%BC%94%E5%91%98"}}{\\fldrslt \\cf6 \\\'c4\\\'d0\\\'d1\\\'dd\\\'d4\\\'b1}}\\\'a1\\\'a2\\\'b5\\\'bc\\\'d1\\\'dd\\\'a1\\\'a3\n\\f2 2006\n\\f1 \\\'c4\\\'ea\\\'b1\\\'cf\\\'d2\\\'b5\\\'d3\\\'da{\\field{\\*\\fldinst{HYPERLINK "https://baike.baidu.com/item/%E4%B8%AD%E5%A4%AE%E6%88%8F%E5%89%A7%E5%AD%A6%E9%99%A2"}}{\\fldrslt \\cf6 \\\'d6\\\'d0\\\'d1\\\'eb\\\'cf\\\'b7\\\'be\\\'e7\\\'d1\\\'a7\\\'d4\\\'ba}}\\\'b1\\\'ed\\\'d1\\\'dd\\\'cf\\\'b5\\\'a1\\\'a3\n\\f2 \\cb1 \\\n\\cb5 2004\n\\f1 \\\'c4\\\'ea\\\'b2\\\'ce\\\'d1\\\'dd\\\'b5\\\'e7\\\'ca\\\'d3\\\'be\\\'e7\\\'a1\\\'b6{\\field{\\*\\fldinst{HYPERLINK "https://baike.baidu.com/item/%E4%B8%8E%E9%9D%92%E6%98%A5%E6%9C%89%E5%85%B3%E7%9A%84%E6%97%A5%E5%AD%90"}}{\\fldrslt \\cf6 \\\'d3\\\'eb\\\'c7\\\'e0\\\'b4\\\'ba\\\'d3\\\'d0\\\'b9\\\'d8\\\'b5\\\'c4\\\'c8\\\'d5\\\'d7\\\'d3}}\\\'a1\\\'b7\\\'a3\\\'ac\\\'bf\\\'aa\\\'ca\\\'bc\\\'d4\\\'da\\\'d3\\\'b0\\\'ca\\\'d3\\\'c8\\\'a6{\\field{\\*\\fldinst{HYPERLINK "https://baike.baidu.com/item/%E5%B4%AD%E9%9C%B2%E5%A4%B4%E8%A7%92"}}{\\fldrslt \\cf6 \\\'d5\\\'b8\\\'c2\\\'b6\\\'cd\\\'b7\\\'bd\\\'c7}}\n\\f2\\fs21 \\cf7 [1]\n\\fs24 \\cf6 \\\'a0\n\\fs28 \\cf4  \n\\f1 \\\'a1\\\'a3\n\\f2\\fs21 \\cf7 \\\n\\pard\\tx674\\pardeftab674\\pardirnatural\\partightenfactor0\n\n\\f0\\fs28 \\cf2 \\cb3 \\kerning1\\expnd0\\expndtw0 \\CocoaLigature0 \\\n\\\n\\\n\\\n\\\n\\\n\\\n\\\n\\\n\\\n\\\n\\\n\\\n\\\n}'
>>> c.read()
''      #文件指针,读到哪里就插入到哪里,所以这里再次读取,没有数据
>>> 
>>> c.close()
>>> c = open('/Users/hongbaodai/Desktop/TE.rtf')
>>> c.read(5)
'{\\rtf'    #读出了前五个字符
>>> 

1.3:tell:当前书签的位置
接上

>>> c.tell()
5
>>> 

1.4:seek:修改文件指针

>>> c.seek(35,0)
35
>>> c.readline()       #读取一行
'\\cocoasubrtf830\n'
>>> 

1.5:list :文件对象转化为列表

>>> list(c)
['{\\fonttbl\\f0\\fnil\\fcharset0 Menlo-Regular;\\f1\\fnil\\fcharset134 PingFangSC-Regular;\\f2\\fswiss\\fcharset0 ArialMT;\n', '}\n', '{\\colortbl;\\red255\\green255\\blue255;\\red100\\green56\\blue32;\\red255\\green255\\blue255;\\red38\\green38\\blue38;\n', '\\red255\\green255\\blue255;\\red19\\green87\\blue181;\\red39\\green78\\blue192;}\n', '{\\*\\expandedcolortbl;;\\csgenericrgb\\c39216\\c21961\\c12549;\\csgray\\c100000;\\cssrgb\\c20000\\c20000\\c20000;\n', '\\cssrgb\\c100000\\c100000\\c100000;\\cssrgb\\c7451\\c43137\\c76078;\\cssrgb\\c20000\\c40000\\c80000;}\n', '\\paperw11900\\paperh16840\\margl1440\\margr1440\\vieww20340\\viewh15660\\viewkind0\n', '\\deftab674\n', '\\pard\\tx674\\pardeftab674\\pardirnatural\\partightenfactor0\n', '\n', '\\f0\\fs28 \\cf2 \\cb3 \\CocoaLigature0 \\\n', '\\\n', '\\\n', '\\pard\\pardeftab720\\partightenfactor0\n', '\n', '\\f1 \\cf4 \\cb5 \\expnd0\\expndtw0\\kerning0\n', "\\CocoaLigature1 \\'ce\\'c4\\'d5\\'c2\\'a3\\'ac\n", '\\f2 1984\n', "\\f1 \\'c4\\'ea\n", '\\f2 6\n', "\\f1 \\'d4\\'c2\n", '\\f2 26\n', '\\f1 \\\'c8\\\'d5\\\'b3\\\'f6\\\'c9\\\'fa\\\'d3\\\'da{\\field{\\*\\fldinst{HYPERLINK "https://baike.baidu.com/item/%E9%99%95%E8%A5%BF%E7%9C%81"}}{\\fldrslt \\cf6 \\\'c9\\\'c2\\\'ce\\\'f7\\\'ca\\\'a1}}{\\field{\\*\\fldinst{HYPERLINK "https://baike.baidu.com/item/%E8%A5%BF%E5%AE%89%E5%B8%82"}}{\\fldrslt \\cf6 \\\'ce\\\'f7\\\'b0\\\'b2\\\'ca\\\'d0}}\\\'a3\\\'ac\\\'d6\\\'d0\\\'b9\\\'fa\\\'c4\\\'da\\\'b5\\\'d8{\\field{\\*\\fldinst{HYPERLINK "https://baike.baidu.com/item/%E7%94%B7%E6%BC%94%E5%91%98"}}{\\fldrslt \\cf6 \\\'c4\\\'d0\\\'d1\\\'dd\\\'d4\\\'b1}}\\\'a1\\\'a2\\\'b5\\\'bc\\\'d1\\\'dd\\\'a1\\\'a3\n', '\\f2 2006\n', '\\f1 \\\'c4\\\'ea\\\'b1\\\'cf\\\'d2\\\'b5\\\'d3\\\'da{\\field{\\*\\fldinst{HYPERLINK "https://baike.baidu.com/item/%E4%B8%AD%E5%A4%AE%E6%88%8F%E5%89%A7%E5%AD%A6%E9%99%A2"}}{\\fldrslt \\cf6 \\\'d6\\\'d0\\\'d1\\\'eb\\\'cf\\\'b7\\\'be\\\'e7\\\'d1\\\'a7\\\'d4\\\'ba}}\\\'b1\\\'ed\\\'d1\\\'dd\\\'cf\\\'b5\\\'a1\\\'a3\n', '\\f2 \\cb1 \\\n', '\\cb5 2004\n', '\\f1 \\\'c4\\\'ea\\\'b2\\\'ce\\\'d1\\\'dd\\\'b5\\\'e7\\\'ca\\\'d3\\\'be\\\'e7\\\'a1\\\'b6{\\field{\\*\\fldinst{HYPERLINK "https://baike.baidu.com/item/%E4%B8%8E%E9%9D%92%E6%98%A5%E6%9C%89%E5%85%B3%E7%9A%84%E6%97%A5%E5%AD%90"}}{\\fldrslt \\cf6 \\\'d3\\\'eb\\\'c7\\\'e0\\\'b4\\\'ba\\\'d3\\\'d0\\\'b9\\\'d8\\\'b5\\\'c4\\\'c8\\\'d5\\\'d7\\\'d3}}\\\'a1\\\'b7\\\'a3\\\'ac\\\'bf\\\'aa\\\'ca\\\'bc\\\'d4\\\'da\\\'d3\\\'b0\\\'ca\\\'d3\\\'c8\\\'a6{\\field{\\*\\fldinst{HYPERLINK "https://baike.baidu.com/item/%E5%B4%AD%E9%9C%B2%E5%A4%B4%E8%A7%92"}}{\\fldrslt \\cf6 \\\'d5\\\'b8\\\'c2\\\'b6\\\'cd\\\'b7\\\'bd\\\'c7}}\n', '\\f2\\fs21 \\cf7 [1]\n', "\\fs24 \\cf6 \\'a0\n", '\\fs28 \\cf4  \n', "\\f1 \\'a1\\'a3\n", '\\f2\\fs21 \\cf7 \\\n', '\\pard\\tx674\\pardeftab674\\pardirnatural\\partightenfactor0\n', '\n', '\\f0\\fs28 \\cf2 \\cb3 \\kerning1\\expnd0\\expndtw0 \\CocoaLigature0 \\\n', '\\\n', '\\\n', '\\\n', '\\\n', '\\\n', '\\\n', '\\\n', '\\\n', '\\\n', '\\\n', '\\\n', '\\\n', '\\\n', '}']
>>> 

1.6:打印每一行:这里中间省略 太长了

>>> for earch in c:
	print(earch)

	
{\rtf1\ansi\ansicpg936\cocoartf1504\cocoasubrtf830

{\fonttbl\f0\fnil\fcharset0 Menlo-Regular;\f1\fnil\fcharset134 PingFangSC-Regular;\f2\fswiss\fcharset0 ArialMT;

}

{\colortbl;\red255\green255\blue255;\red100\green56\blue32;\red255\green255\blue255;\red38\green38\blue38;

\red255\green255\blue255;\red19\green87\blue181;\red39\green78\blue192;}

{\*\expandedcolortbl;;\csgenericrgb\c39216\c21961\c12549;\csgray\c100000;\cssrgb\c20000\c20000\c20000;

\cssrgb\c100000\c100000\c100000;\cssrgb\c7451\c43137\c76078;\cssrgb\c20000\c40000\c80000;}

\paperw11900\paperh16840\margl1440\margr1440\vieww20340\viewh15660\viewkind0

、、、、略略略

}
>>> 

1.7:写入 write 在这里需要注意下,如果这里需要写入,要注意前面的打开模式 有w/a,详情请看1.1

接上
例如
>>> c.write('234')
Traceback (most recent call last):
  File "<pyshell#34>", line 1, in <module>
    c.write('234')
io.UnsupportedOperation: not writable
>>> 

>>> d = open('/Users/hongbaodai/Desktop/LL.rtf', 'w')
>>> 


这个事直接写入的文件

>>> d.write('i think so')
10  #表示写入7个字符

>>> d.close()  #关闭就会存入磁盘中,没有关闭会放在它的缓冲区里





















  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值