python自动化学习笔记之DAY3

一、文件处理

1、文件处理流程

  1. 打开文件,得到文件句柄并赋值给一个变量
  2. 通过句柄对文件进行操作
  3. 关闭文件

2、文件打开与关闭

open() 函数打开文件。它需要两个参数,第一个参数是文件路径或文件名,第二个是文件的打开模式。模式通常是下面这样的:

  • r ,只读模式【默认模式,文件必须存在,不存在则抛出异常】
  • w,只写模式【不可读;不存在则创建;存在则清空内容】
  • x, 只写模式【不可读;不存在则创建,存在则报错】
  • a, 追加模式【可读;   不存在则创建;存在则只追加内容】

"+" 表示可以同时读写某个文件

  • r+, 读写【可读,可写】
  • w+,写读【可读,可写】
  • x+ ,写读【可读,可写】
  • a+, 写读【可读,可写】

 "b"表示以字节的方式操作

  • rb  或 r+b
  • wb 或 w+b
  • xb 或 w+b
  • ab 或 a+b

打开文件后我们应该总是关闭文件。我们使用方法 close() 完成这个操作。

注意:默认的模式为只读模式,也就是说如果你不提供任何模式,open() 函数将会以只读模式打开文件

3、文件读取

使用read()方法一次性读取整个文件。

 file=open('a.txt','r',encoding='utf-8')
     res=f.read()
     print(res)

read(size)有一个可选的参数 ,用于指定字符串长度。如果没有指定或者指定为负数,就会读取并返回整个文件

使用readline() 能每次读取文件的一行。可以用循环遍历文件对象读取其中的每一行。

 file=open('a.txt','r',encoding='utf-8')
     res=f.readline()
     print(res)

可以循环遍历文件对象来读取文件中的每一行。
file=open('a.txt','r',encoding='utf-8')
    for line in file:
    print(line,end = '')
    file.close

 

4、文件写入

通过 write() 方法打开一个文件然后我们随便写入一些文本

 f=open('a.txt','w',encoding='utf-8')
 f.write('11111\n')

每行写入

 f.writelines(['a\n','b\n','c\n'])
 f.close()

5、使用with语句

在实际情况中,我们应该尝试使用 with 语句处理文件对象,它会文件用完后会自动关闭,就算发生异常也没关系。

 import os
 with open('old.txt','r',encoding='utf-8') as read_f,\
     open('.old.txt.swap','w',encoding='utf-8') as write_f:
     msg=read_f.read()
     msg=msg.replace('hi','你好')
     write_f.write(msg)
 os.remove('old.txt')
 os.rename('.old.txt.swap','old.txt')

二、函数

1、定义函数

使用关键字 def来定义一个函数

定义函数的三种形式

      无参:应用场景仅仅只是执行一些操作,比如与用户交互,打印

      有参:需要根据外部传进来的参数,才能执行相应的逻辑,比如统计长度,求最大值最小值

      函数:设计代码结构

2、函数调用

     先找到名字

     根据名字调用代码

函数的返回值?

0->None

1->返回1个值

多个->元组

函数调用的三种形式

       语句形式:foo()

       表达式形式:3*len('hello')

       当中另外一个函数的参数:range(len('hello'))

编写一个函数,它将接受两个整数作为输入,然后返回总和。

def sun(a,b)

    return a +b

res = sum (1,2)

print(res)

第二行有个 return 关键字,我们把 a + b 的值返回给调用者。



 

posted @ 2017-07-19 22:41  糖果的海角sky  阅读(93)  评论(0)    收藏  举报