天天看点

第六节:python文件处理

<code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code>

<code>file</code><code>(</code><code>'test.txt'</code><code>,</code><code>'r'</code><code>)   </code><code>#只读的方式,也是默认的方式。(如果test.txt文件不存在会报错。)</code>

<code>file</code><code>(</code><code>'test.txt'</code><code>,</code><code>'w'</code><code>)   </code><code>#写一个文件。(如果没有此文件,会在当前目录下创建一个文件)</code>

<code>file</code><code>(</code><code>'test.txt'</code><code>,</code><code>'a'</code><code>)   </code><code>#追加的方式。</code>

<code>file</code><code>(</code><code>'test.txt'</code><code>,</code><code>'w'</code><code>).write(</code><code>'abcdefghkhjisorg'</code><code>)  </code><code>#把abc,,写入test.txt文件,写的方式会覆盖老文件。</code>

<code>f</code><code>=</code><code>open</code><code>(</code><code>'/tmp/hello'</code><code>,</code><code>'w'</code><code>)   </code><code>#以写的方式新建一个文件。open(路径+文件名,读写模式) </code>

<code>with </code><code>open</code><code>(‘test.txt’,‘r’)as f: </code><code>#这种方式写文件,写完以后不用关闭会自动保存。</code>

<code>for</code> <code>i </code><code>in</code> <code>f.readlines():                    </code>

<code>    </code><code>print</code> <code>i  </code>

<code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code>

<code>f</code><code>=</code><code>open</code><code>(</code><code>'a.log'</code><code>,</code><code>'w+r'</code><code>)</code>

<code>for</code> <code>i </code><code>in</code> <code>range</code><code>(</code><code>10</code><code>):</code>

<code>    </code><code>f.write(</code><code>str</code><code>(i)</code><code>+</code><code>'\n'</code><code>)</code>

<code>f.close()</code>

<code>f</code><code>=</code><code>file</code><code>(</code><code>'a.log'</code><code>,</code><code>'r'</code><code>)</code>

<code>a</code><code>=</code><code>f.read()</code>

<code>print</code> <code>a</code>

<code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code>

<code>import</code> <code>random    </code><code>#random.randint(0,100)是从0-100选取随机数。</code>

<code>f</code><code>=</code><code>open</code><code>(</code><code>'a.log'</code><code>,</code><code>'a'</code><code>)</code>

<code>for</code> <code>i </code><code>in</code> <code>range</code><code>(</code><code>0</code><code>,</code><code>10</code><code>):</code>

<code>    </code><code>#f.write(str(random.randint(0,1000))+'\n')</code>

<code>    </code><code>f.write(</code><code>str</code><code>(random.randint(</code><code>0</code><code>,</code><code>1000</code><code>)))</code>

<code>    </code><code>f.write(</code><code>'\n'</code><code>)</code>

<code>import</code> <code>random</code>

<code>#f=open('f.txt','a')</code>

<code>        </code><code>f</code><code>=</code><code>open</code><code>(</code><code>'f.txt'</code><code>,</code><code>'a'</code><code>)</code>

<code>        </code><code>for</code> <code>i </code><code>in</code> <code>range</code><code>(</code><code>0</code><code>,</code><code>10</code><code>):f.write(</code><code>str</code><code>(random.randint(</code><code>0</code><code>,</code><code>9</code><code>)))</code>

<code>        </code><code>f.write(</code><code>'\n'</code><code>)</code>

<code>        </code><code>f.close()</code>

<code>f</code><code>=</code><code>file</code><code>(</code><code>'test.txt'</code><code>,</code><code>'w'</code><code>)    </code><code>#创建一个文件,类型为写的方式打开</code>

<code>f.write(</code><code>'today is a good day\n'</code><code>)  </code><code>#换行 </code>

<code>f.close()  </code><code>#关闭并保存(要以r的方式关闭)。</code>

<code>f.read()    </code><code>#读入写入的全部内容</code>

<code>f.flush()  </code><code>#刷新写入磁盘(以r的方式关闭)</code>

<code>f.tell()                                             </code><code>#显示现在第几个字符。</code>

<code>f.seek(</code><code>0</code><code>)  </code><code>#移到指定的字符位置。例如:移到第33个字符。f.seek(33)</code>

<code>f.readline()  </code><code>#换行的方式读,每次只读一行。</code>

<code>f.readlines()  </code><code>#以列表的方式读全部内容</code>

<code>content</code><code>=</code><code>f.read()  </code><code>#把文件读的方式传给content</code>

<code>content      </code><code>#查看content内容</code>

<code>content.split(</code><code>'\n'</code><code>)[</code><code>0</code><code>] </code><code>#分行的方式查看文件,[0]时,查看的是第一行。[1]时,查看的第二行。</code>

<code>c</code><code>=</code><code>f.readlines() </code>

<code>c</code>

<code>c[</code><code>0</code><code>]</code>

<code>c[</code><code>1</code><code>]</code>

<code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code><code>-</code>

<code>把屏幕的输出写入到文件中。(注意,此方式结果不会在屏幕上显示。)</code>

<code>import</code> <code>sys</code>

<code>sys.stdout </code><code>=</code> <code>open</code><code>(</code><code>'/tmp/audit.log'</code><code>,</code><code>'a+w'</code><code>)</code>

<code>修改替换文件:</code>

<code> </code><code>for</code>  <code>i </code><code>in</code> <code>fileinput.</code><code>input</code><code>(</code><code>'a.log'</code><code>,inplace</code><code>=</code><code>1</code><code>):</code>

<code>     </code><code>i</code><code>=</code><code>i.replace(</code><code>'break'</code><code>,</code><code>'continue'</code><code>) </code>

<code>     </code><code>print</code> <code>i</code>

<code>先备份,再修改文件:</code>

<code>  </code><code>for</code>  <code>i </code><code>in</code> <code>fileinput.</code><code>input</code><code>(</code><code>'a.log'</code><code>,inplace</code><code>=</code><code>1</code><code>,backup</code><code>=</code><code>'.bak'</code><code>):</code>

版权声明:原创作品,谢绝转载。否则将追究法律责任

本文转自 王家东哥 51CTO博客,原文链接:http://blog.51cto.com/xiaodongge/1862062