python-open内置函数

本文详细介绍了Python内置的open函数,包括如何打开、读取、写入文件,不同模式的使用,以及with语句在文件操作中的应用。重点关注了txt格式的文本操作,如read(), readline(), readlines(), write(), writelines()等方法,并举例说明了各种模式('w', 'r', 'a', 'wb', 'rt')的功能。" 78878288,5742150,Axure中继器实现动态增删改查,"['原型设计', 'axure8-0', '增删改查']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文先只讲述txt格式文本打开及写入

1、打开

f = open('文件名')   打开文件,文件名处要写绝对路径,返回值是文件对象, 默认转化英文

2、读取

读取文件中的内容  f.read(),一次性全部读取出来。怎么写入的怎么显示  

 encoding编码格式,utf-8可识别中文/韩文/日文等

f.readline()  一行一行的读取,每次只读取一行

 f.readlines()  全部读取,每行当成一个列表元素,返回一个列表数据

 3、写入

f.write('value')  写入,每次只能写入一个字符串,返回写入内容的长度

 

f.writeline(['','',...''])   写入多个字符串内容

 

4、模式

mode='w'  写入模式,表示可以向文件中写入内容。每次输入鼠标都是从头开始,将之前内容覆盖只显示最新内容;若之前没有该文件则会自动创建

内容将被写入case.txt文件中

 

mode='r'   读取模式,被打开的文件必须存在,否则报错

mode = 'a'  添加/追加的模式,每次打开鼠标定位在原有内容的末尾,在原有内容基础上追加

追加后case文件内容

mode = 'rb' 二进制文件模式   如:打开图片/视频。  mode = 'rt'  普通文本模式

5、with语句

打开文件后一定要记得关闭文件,关闭方法f.close()为了防止忘关闭文件一般用with语句

with open('文件名',mode='',ecoding='utf-8'):

     语句

 

6、案例

将嵌套列表里的字典分行添加到文件中

'''
题目:把以下字典分行添加到文件当中:
person_info = [
    {
        'name':'vvv',
        'age':22,
        'gender':'男',
        'hobby':'学习',
        'motto':'学习使我快乐'
    },
    {
        'name':'yuze',
        'age':20,
        'gender':'女',
        'hobby':'拿30k offer',
        'motto':'下次拿个40k的'
    },
]
得到一个info.txt的文件:
name,age,gender,hobby,motto
vvv,22,男,学习,学习使我快乐
yuze,20,女,拿30k offer,下次拿个40k的
'''
person_info = [
    {
        'name':'vvv',
        'age':22,
        'gender':'男',
        'hobby':'学习',
        'motto':'学习使我快乐'
    },
    {
        'name':'yuze',
        'age':20,
        'gender':'女',
        'hobby':'拿30k offer',
        'motto':'下次拿个40k的'
    },
]
keys_list = []
all_value = []
before_value = []
later_value = []
def fun_key():
    for i in person_info:
        for keys,values in i.items():
            if keys not in keys_list:
                keys_list.append(keys)
            all_value.append(values)
    key_str = ','.join(keys_list)
    return key_str
def fun_before_value():
    for i in range(0,5):
        before_value.append(all_value[i])
    before_value[1] = str(before_value[1])
    before_str = ','.join(before_value)
    return before_str
def fun_later_value():
    for i in range(5,10):
        later_value.append(all_value[i])
    later_value[1] = str(later_value[1])
    later_str = ','.join(later_value)
    return later_str
with open(r'E:\study\info.txt',mode = 'w', encoding = 'utf-8') as f:
    f.write(fun_key()+'\n'+fun_before_value()+'\n'+fun_later_value())
with open('E:\study\info.txt', mode='r', encoding='utf-8') as f:
    print(f.read())
将文件中的内容读取后保存到以列表嵌套字典的形式的列表当中
'''
题目:手工创建cases.txt文件,文件中手工复制2行数据:
url:/futureloan/mvc/api/member/register@mobile:18866668888@pwd:123456
url:/futureloan/mvc/api/member/recharge@mobile:18866668888@amount:1000
请利用上课所学知识,把txt里面的两行内容取出然后保存到一个列表和字典当中:(可定义函数)
[
  {
      'url':'/futureloan/mvc/api/member/register',
      'mobile':'18866668888',
      'pwd':'123456'
  },
  {
      'url':'/futureloan/mvc/api/member/recharge',
      'mobile':'18866668888',
      'amount':'1000'
  }
]
'''
first_list = []
second_list = []
first_dict = {}
second_dict = {}
def fun_first_list():
    list1 = result1.split('@')
    list1[2] = list1[2].rstrip('\n')
    for i in range(0,3):
        first_list.append(list1[i].split(':'))
        first_dict[first_list[i][0]] = first_list[i][1]
    return first_dict
def fun_second_list():
    list2 = result2.split('@')
    for i in range(0,3):
        second_list.append(list2[i].split(':'))
        second_dict[second_list[i][0]] = second_list[i][1]
    return second_dict
with open(r'E:\study\cases.txt',mode='r',encoding='utf-8') as e:
    result1 = e.readline()
    result2 = e.readline()
all_list = [fun_first_list(),fun_second_list()]
print('[')
for i in all_list:
    print(i,',')
print(']')
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值