题目:

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. ResourceBundle和properties 读取配置文件区别

    java.util.ResourceBundle 和java.util.properties 读取配置文件区别 这两个类都是读取properties格式的文件的,而Properties同时还能用来写文 ...

  2. java resources 红叉 Cannot change version of project facet Dynamic Web Module to 2.5

    在使用maven导入项目的时候,markers提示Cannot change version of project facet Dynamic Web Module to 2.5,不能将工程转换为2. ...

  3. MapReduce-shuffle过程详解

    Shuffle map端 map函数开始产生输出时,并不是简单地将它写到磁盘.这个过程很复杂,它利用缓冲的方式写到内存并出于效率的考虑进行预排序.每个map任务都有一个环形内存缓冲区用于存储任务输出. ...

  4. eclipse添加删除插件-eclipse marketplace

    源文地址:http://jingyan.baidu.com/article/cdddd41c5c883353cb00e19e.html 在有些版本的eclips上并没有eclipse marketpl ...

  5. 51nod 1255 贪心/构造

    http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1255 1255 字典序最小的子序列 题目来源: 天津大学OJ 基准时间限 ...

  6. jar包作用

    hibernate中jar包的作用 (1)hibernate3.jar:Hibernate的核心库,没有什么可说的,必须使用的jar包 (2)cglib-asm.jar:CGLIB库,Hibernat ...

  7. ElasticSearch聚合分析API——非常详细,如果要全面了解的话,最好看这个

    转自:http://www.tianyiqingci.com/2016/04/11/esaggsapi/ 前言 说完了ES的索引与检索,接着再介绍一个ES高级功能API – 聚合(Aggregatio ...

  8. 1.Linux和Unix区别

    整理来源于网络:http://blog.csdn.net/xiaojianpitt/article/details/6377419 有很多初学Linux的人比较关心Linux和windows的区别,这 ...

  9. git 远程库 创建私钥

    1.创建SSH Key.在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步.如果没有,打开Shell(W ...

  10. Linux中几个实用快捷键

    返回上层目录: cd .. 命令提示符: user@ubuntu: @之前的部分为当前用户ID名称:  @之后冒号之前是主机名称 sudo :(Superusers Do) 以超级用户执行 在相对路径 ...