题目:

1、TXT文本文件中的内容为:
  url:http://119.23.241.154:8080/futureloan/mvc/api/member/login,mobilephone:13760246701,pwd:123456
  url:http://119.23.241.154:8080/futureloan/mvc/api/member/login,mobilephone:15678934551,pwd:234555
要求:
  1)将文件的数据读取出来,并根据逗号将其分隔出来 ;
  2)将分隔出来的数据,再以冒号进行分隔。冒号之前为key,冒号之后为value。
  3)最终结果要求如下:
    [{"url":"http://119.23.241.154:8080/futureloan/mvc/api/member/login","mobilephone":"13760246701","pwd":"123456"},
    {"url":"http://119.23.241.154:8080/futureloan/mvc/api/member/login","mobilephone":"15678934551","pwd":"234555"}]

解答:

  第一种:
 # 读取数据 --按行读取文件中的数据
fs = open("test.txt") # 打开文件
lines = fs.readlines() # 按行读取
for line in lines: # 循环处理每行数据
# print(line)
datas = line.strip("\n").split(",") # 对每行进行处理,strip("\n")去掉前后换行符,split(",")使用,号分隔
# print(datas) # datas = ['url:http://119.23.241.154:8080/futureloan/mvc/api/member/login',
# 'mobilephone:13760246701', 'pwd:123456']
urls = {} # 定义一个空字典
for i in datas: # 获取datas列表中的每一条数据
temp = i.split(":",1) # 将datas中每一条数据用 :号分隔1次
print(temp)
urls[temp[0]] = temp[1] # 键-值对添加值 key = value
print(urls)

  第二种:不带返回值的函数

 def getDictDatas_FromFile(filePath):
# 读取数据 --按行读取文件中的数据
fs = open(filePath) # 打开文件
lines = fs.readlines() # 按行读取 for line in lines: # 循环处理每行数据
# print(line)
datas = line.strip("\n").split(",") # 对每行进行处理,strip("\n")去掉前后换行符,split(",")使用,号分隔
urls = {} # 定义一个空字典
for i in datas: # 获取datas列表中的每一条数据
temp = i.split(":", 1) # 将datas中每一条数据用 :号分隔1次
# print(temp)
urls[temp[0]] = temp[1] # 键-值对添加值 key = value
print(urls) a = getDictDatas_FromFile("test.txt")

  第三种:带返回值的函数

def getDictDatas_FromFile(filePath):
fs = open(filePath,encoding= 'utf-8') # 打开文件
lines = fs.readlines() # 按行读取
data = [] # 定义一个空列表,用来接收每行数据
for line in lines:
list = line.strip("\n").split(",") # 用,号分隔,并去除换行符
urls = {} # 定义一个空字典
for item in list: # 获取list列表中的每一条数据
temp = item.split(":",1) # 将list中每一条数据用 :号分隔1次
urls[temp[0]] = temp[1] # 键-值对添加值 key = value
data.append(urls)
return data

  执行结果:

{'pwd': '', 'url': 'http://119.23.241.154:8080/futureloan/mvc/api/member/login', 'mobilephone': ''}
{'pwd': '', 'url': 'http://119.23.241.154:8080/futureloan/mvc/api/member/login', 'mobilephone': ''}

Python操作txt文本文件的更多相关文章

  1. python操作txt文件中数据教程[4]-python去掉txt文件行尾换行

    python操作txt文件中数据教程[4]-python去掉txt文件行尾换行 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文章 python操作txt文件中数据教程[1]-使用pyt ...

  2. python操作txt文件中数据教程[3]-python读取文件夹中所有txt文件并将数据转为csv文件

    python操作txt文件中数据教程[3]-python读取文件夹中所有txt文件并将数据转为csv文件 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献 python操作txt文件中 ...

  3. python操作txt文件中数据教程[2]-python提取txt文件

    python操作txt文件中数据教程[2]-python提取txt文件中的行列元素 觉得有用的话,欢迎一起讨论相互学习~Follow Me 原始txt文件 程序实现后结果-将txt中元素提取并保存在c ...

  4. python操作txt文件中数据教程[1]-使用python读写txt文件

    python操作txt文件中数据教程[1]-使用python读写txt文件 觉得有用的话,欢迎一起讨论相互学习~Follow Me 原始txt文件 程序实现后结果 程序实现 filename = '. ...

  5. 使用python操作json文本文件

    使用python读写文本文件内容时,我们知道如果文本文件里的内容无规律,那么修改起来比较麻烦.但是如果文本文件存储是有规律的,比如JSON格式,在利用python内置的函数把JSON格式的数据转成py ...

  6. python 操作txt 生成新的文本数据

    name: Jack ; salary: 12000 name :Mike ; salary: 12300 name: Luk ; salary: 10030 name :Tim ; salary: ...

  7. Python读写txt文本文件

    一.文件的打开和创建 ? 1 2 3 4 5 >>> f = open('/tmp/test.txt') >>> f.read() 'hello python!\n ...

  8. vbs操作txt文本文件常用方法(函数)

    创建文件 dim fso, f set fso = server.CreateObject("Scripting.FileSystemObject") set f = fso.Cr ...

  9. 数据备份 及 Python 操作 Mysql

    一 MySQL数据备份 #1. 物理备份: 直接复制数据库文件,适用于大型数据库环境.但不能恢复到异构系统中如Windows. #2. 逻辑备份: 备份的是建表.建库.插入等操作所执行SQL语句,适用 ...

随机推荐

  1. asp.net 5 (mvc 6) 获取网站的物理路径

    public static IApplicationEnvironment GetApplication(this RazorPage page) { var ae = page.Context.Re ...

  2. JavaWeb基础

    1.Servlet: Servlet是JavaWeb的3大组件之一,是把url请求转为后台处理的具体类,此类必须实现Servlet接口,一把实际使用时无须我们实现,我们直接使用JavaEE的HTTPS ...

  3. RabbitMQ死信队列

    关于RabbitMQ死信队列 死信队列 听上去像 消息“死”了     其实也有点这个意思,死信队列  是 当消息在一个队列 因为下列原因: 消息被拒绝(basic.reject/ basic.nac ...

  4. 软件体系结构C2风格

    首先C2风格是最常用的一种软件体系结构风格.(下图为一个C2风格的架构图) C2是一种基于构件和消息的架构风格,可用于创建灵活的.可伸缩的软件系统.一个C2构架可以看成是按照一定规则由连接件连接的许多 ...

  5. DataX的安装

    DataX的安装 1. 可下载tar包 https://github.com/alibaba/DataX/blob/master/userGuid.md 2. 下载源码自己编译 git clone h ...

  6. C# 反射通过GetCustomAttributes方法,获得自定义特性

    http://blog.csdn.net/litao2/article/details/17633107 使用反射访问: 自定义属性的信息和对其进行操作的方法. 一.实例1 1.代码: 如:Syste ...

  7. Linux嵌入式 -- 内核 - 内存管理

    1.  逻辑地址 线性地址 物理地址 段式管理: 16位CPU,20根地址总线,可寻址1M内存,但是只有16位的寄存器,64K. 逻辑地址  =  段基地址 + 段内偏移地址 物理地址 PA  = 段 ...

  8. eclipse build path 以及 clean(转)

    1.设置"source folder"与"output folder". source folder:存放.Java源文件的根目录:output folder: ...

  9. Specify compute hosts with SSDs

    scheduler_driver = nova.scheduler.filter_scheduler.FilterScheduler scheduler_available_filters = nov ...

  10. Excel 导入到处问题处理!

    1.未在本地计算机上注册"Microsoft.Jet.OLEDB.4.0" 因为没有安装64位的Jet40驱动.可以到 http://www.microsoft.com/downl ...