===========Python文件基础=========

写,先写在了IO buffer了,所以要及时保存 关闭。关闭会自动保存。

file.close()
读取全部文件内容用read,读取一行用readline—>string(如果是循环,下次读取下一行),读取多行readlines—>list(也是全部读完)

========Python文件的格式化写入=======

am001=open('Amfomat.txt','w')

s='%10s%10s%10s\n'%('Id','Name','Record')

am001.write(s)

s1='%10d%10s%10.2f\n'%(854179353,'amily',99.8)

am001.write(s1)

s2='%10d%10s%10.2f\n'%(347634734,'yiggle',98.8)

am001.write(s2)

s3='%10d%10s%10.2f\n'%(347634734,'yiggle',98.8)

am001.write(s3)

s4='%10d%10s%10.2f\n'%(347634734,'yiggle',98.8)

am001.write(s4)

s5='%10d%10s%10.2f\n'%(347634734,'yiggle',98.8)

am001.write(s5)

s6='%10d%10s%10.2f\n'%(347634734,'yiggle',98.8)

am001.write(s6)

am001.close()

============循环体和文件=======

>>> help(file.readline)

readline(...)

readline([size]) -> next line from the
file, as a string.

Retain newline.  A non-negative size argument limits the
maximum

number of bytes to return (an incomplete
line may be returned then).

Return an empty string at EOF.

在linux下退出python环境 可以用quit()

>>> id1=open('Amfomat.txt','r')

>>> print id1.readline().strip('\n')

Id      Name   
Record

>>> print id1.readline().strip('\n')                       #第二次调用就自动取了下一行

854179353     amily    
99.80

>>> print id1.readline().strip('\n')

347634734    yiggle    
98.80

===============用while和readline循环输出文件中所有内容=========

fw=open('Amfomat.txt','r')

s=fw.readline()

while s!='':

s=s.rstrip('\n')

print s

s=fw.readline()

fw.close()

==================for和file_obj=======================

fr=open('Amfomat.txt','r')

for str in fr:

str=str.strip('\n')

print str

fr.close()

这跟上面的遍历输出文件内容效果是一样的。

s=’www.baidu.com’

for str1 in s:

print str1,

结果为 w w w . b a
i d u . c o m

>>> s='www.baidu.com'

>>> si=iter(s)                   #iter(xxx),获取xxx的迭代器,strlist以及tuple都可以用迭代器,因此也都可以用for语句

>>> si.next()                 
是从第一个开始的

'w'

>>> si.next()

'w'

>>> si.next()

'w'

>>> si.next()

'.'

i = iter('abcd')
print i.next()
print i.next()
print i.next()

s = {'one':1,'two':2,'three':3}
print s
m = iter(s)
print m.next()
print m.next()
print m.next()

结果

a

b

c

{'three': 3, 'two': 2, 'one': 1}

three

two

one

只要某一个对象是一个有序的聚合对象,就可以通过迭代器依次取出它的每个元素,因此也都可以用for语句,字符串,列表,元组,字典都是可以的。到最后一个值得时候抛出异常:stopiteration

for是通过获取对象的迭代器,然后在通过迭代器里的next方法依次取出迭代器里的各个元素。

对于文件 ,文件中的每一行就是这个文件局和对象的元素。

fr=open(‘for.py’,’r’)

fi=iter(fr)

print fi.next()

print fi.next()

print fi.next()

type(fr)--àfile

Python文件基础的更多相关文章

  1. Python文件基础操作(IO入门1)

    转载请标明出处: http://www.cnblogs.com/why168888/p/6422270.html 本文出自:[Edwin博客园] Python文件基础操作(IO入门1) 1. pyth ...

  2. Python 第三篇(上):python文件基础操作、json模块、lambda、map、filter、reduce和函数位置参数

    python一切皆对象,linux一切皆文件,python操作文件是很常见的O/I操作,其内置来open()函数可以完成文件的基本操作: 一:使用内置open()函数操作文件,基本语法如下: with ...

  3. python文件基础IO,OS

    #!/usr/bin/python # -*- coding: UTF-8 -*- import os # 导入 Phone 包 #File 对象方法: file对象提供了操作文件的一系列方法. #O ...

  4. Python 入门基础6 --字符编码、文件操作1

    今日内容: 1.字符编码 2.字符与字节 3.文件操作 一.字符编码 了解: cpu:将数据渲染给用户 内存:临时存放数据,断电消失 硬盘:永久存放数据,断电后不消失 1.1 什么是编码? 人类能够识 ...

  5. Python开发基础-Day5-字符编码、文件处理和函数基础(草稿)

    字符编码 为什么要有字符编码? 字符编码是为了让计算机能识别我们人写的字符,因为计算机只认识高低电平,也就是二进制数"0","1". 一个文件用什么编码方式存储 ...

  6. python开发基础之字符编码、文件处理和函数基础

    字符编码 为什么要有字符编码? 字符编码是为了让计算机能识别我们人写的字符,因为计算机只认识高低电平,也就是二进制数"0","1". 一个文件用什么编码方式存储 ...

  7. python函数基础 与文件操作

    函数的定义 函数是通过赋值传递的,参数通过赋值传递给函数.def语句将创建一个函数对象并将其赋值给一个变量名,def语句的一般格式如下: def function_name(arg1,arg2[,.. ...

  8. Python基础篇【第2篇】: Python文件操作

    Python文件操作 在Python中一个文件,就是一个操作对象,通过不同属性即可对文件进行各种操作.Python中提供了许多的内置函数和方法能够对文件进行基本操作. Python对文件的操作概括来说 ...

  9. Linux基础学习(一)__后台运行Python文件

    Linux 后台运行Python脚本 1.安装Python:(python 3.5.4) 2.安装Python依赖包: 2.1 处理Python更新后yum无法正常使用的问题 (错误信息: -bash ...

随机推荐

  1. PRML读书会第三章 Linear Models for Regression(线性基函数模型、正则化方法、贝叶斯线性回归等)

    主讲人 planktonli planktonli(1027753147) 18:58:12  大家好,我负责给大家讲讲 PRML的第3讲 linear regression的内容,请大家多多指教,群 ...

  2. 使用jquery获取url及url参数的方法及定义JQuery扩展方法

    1.jquery获取url很简单,代码如下: window.location.href; 其实只是用到了javascript的基础的window对象,并没有用jquery的知识. 2.jquery获取 ...

  3. [AaronYang]C#人爱学不学8[事件和.net4.5的弱事件深入浅出]

    没有伟大的愿望,就没有伟大的天才--Aaronyang的博客(www.ayjs.net)-www.8mi.me 1. 事件-我的讲法 老师常告诉我,事件是特殊的委托,为委托提供了一种发布/订阅机制. ...

  4. if转换switch的小技巧

    class Program { static void Main(string[] args) { /* 对学员的结业考试成绩评测(用switch) * 成绩>=90……A * 90>成绩 ...

  5. WCF调用时提示错误 "已尝试创建到达不支持 .Net 框架的服务的通道。可能遇到 HTTP 终结点"

    一个以前运行的很正常的项目,某天突然无法连接WCF构建的后台.使用WCFTestClient连接到服务是正常的,但是调用服务中的方式时就报出了以下错误: 已尝试创建到达不支持 .Net 框架的服务的通 ...

  6. maven_项目的依赖、聚合、继承

      一.假设目前有三个maven项目,分别是project.A.project.B.project.C 要求B依赖A.C依赖B但不依赖C 1.B添加对A的依赖 1 2 3 4 5 <depend ...

  7. BACKBONE源代码解析

    //2014.11// Backbone.js 1.0.0 // (c) 2010-2013 Jeremy Ashkenas, DocumentCloud Inc. // Backbone may b ...

  8. POJ2226 Muddy Fields

    Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 10149   Accepted: 3783 Description Rain ...

  9. IRP IO_STACK_LOCATION 《寒江独钓》内核学习笔记(1)

    在学习内核过滤驱动的过程中,遇到了大量的涉及IRP操作的代码,这里有必要对IRP的数据结构和与之相关的API函数做一下笔记. 1. 相关阅读资料 <深入解析 windows 操作系统(第4版,中 ...

  10. C#用UPnP穿透内网

    参考了网上的一篇文章,由于时间长了,具体地址不知道了. 引入了一个DLL: Interop.NATUPNPLib.dll,实现穿透局域网,进行Socket通信. using System; using ...