暑期学习记录06

python

I/O编程

1.输入数据
input(), raw_input()

python2.7中,使用input()函数输入字符串要输入引号;

>>> m=input('请输入金州小学生')
请输入金州小学生'Stephen Curry'
>>> print m
Stephen Curry
>>> 

2.输出数据
1.输出字符串
print ‘字符串常量或字符串变量’
格式化参数形式输出字符串
print “…%s…”%(string)

例:

#print参数列表可以有多个参数

name="Stephen Curry"
name2="Klay Thompson"
print '你好,%s and %s'%(name,name2)
你好,Stephen Curry and Klay Thompson

2.格式化输出整数

i=1
j=2
print '%d+%d=%d'%(i,j,i+j)
结果:1+2=3
#%s,%d可在print同时使用

%x用于输出十六进制 %o用于输出八进制

3.格式化输出浮点数

print '100.0/3=%f'%(100.0/3)
100.0/3=33.333333

%f可以指定浮点数总长度和小数位数
%总长度.小数部分位数 总长度不足,空格浮点数前补齐;

3.文件操作
①打开文件
文件对象=open(文件名,访问模式,buffering)
文件名—路径;访问模式—见下表;buffering—可选参数,缓冲方式0-冲,1-缓冲一行,>1给定值作为缓冲区大小。

可取值含义
r以读方式打开
w以写方式打开,此时文件内容会被清空。如果文件不存在,会创建新文件
a
r+以读写模式打开
w+以读写模式打开
a+以追加的读写模式打开
rb以二进制读模式打开
wb以二进制写模式打开
ab以二进制追加模式打开
rb+以二进制读写模式打开
wb+以二进制读写模式打开
ab+以二进制读写模式打开

也可以使用file()打开文件

Python 2 里基本没区别。Python 3 里没 file。
Python 2 里,file 是文件对象。open 是返回新创建的文件对象的内建函数,相当于:
def open(*args, **kwargs):
return file(*args, **kwargs)
它真实的定义是:
static PyObject *
builtin_open(PyObject *self, PyObject *args, PyObject *kwds)
{
return PyObject_Call((PyObject*)&PyFile_Type, args, kwds);
}
所以 file 也是能够创建文件的。
②关闭文件
f.close(); f为访问对象;
③读取文件内容
read()方法
str=f.read([b])

  • f:读取内容的文件对象
  • b:可选参数,指定读取的字节数,不指定,读取全部内容。
  • 读取内容返回到字符串str中
f=open("test.txt")#打开文件,返回一个文件对象
str=f.read()#读取文件内容
f.close()#关闭文件
print str

readlines()方法

读取文件所有行
list=f.readlines()

  • f:读取内容的文件对象
  • 读取内容返回到字符串列表list中
f=open("test.txt")#打开文件,返回一个文件对象
list=f.readlines()#读取文件内容
f.close()#关闭文件
print list

结果为
['hello python\n','read file\n']

readline()方法
逐行读取文件内容

f=open("test.txt")
while True:                 #循环读取
   chunk=f.readline()       #每次读取一行
   if not chunk:
       break
   print chunk
f.close()

运行结果:
hello python

read file
#读入结果会带有换行符,如\n,print函数会自动输出换行,因此打印结果里会包含换行。

in可以遍历文件所有行
④向文件中写入内容
write()
f.write(写入内容)

fname=input("请输入文件名:")
f=open(fname,'w')
content=input("请输入要写入的内容:")
f.write(content)
f.close()

writelines()写入字符串序列
f.writelines(seq)
写入时序列元素不会被追加换行符

⑤文件指针
1.获取文件指针的位置
pos=文件对象.tell()
2.移动文件指针
文件对象.seek([offset,where])

  • offset:移动的偏移量,单位为字节。等于正数时,向文件尾方向移动文件指针,等于负数,头方向移动。
  • where:指定从何处移动。等于0时,从起始位置移动;等于1从当前位置移动,等于2从结束位置移动。

    ⑥截断文件
    truncate()从文件头开始截取文件
    文件对象.truncate([size])
    参数size指定截取文件大小,单位为字节,size字节后面文件内容将被丢弃。
    ⑦文件属性
    os模块的stat()函数可以获取文件的属性
    文件属性元组=os.stat(文件路径)

复制文件:copy(src,dst)
移动文件:move(src,dst)
删除文件:os.remove(src)
重命名:os.rename(原文件名,新文件名)

⑧目录编程

获取当前目录:os.getcwd()
获取目录内容:os.listdir()
创建目录:os.mkdir(path)
删除目录:os.rmdir(path)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值