题目:

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. 项目打包部署到tomcat操作步骤

    对于项目部署到tomcat中,需进行一下步骤: 1.对于项目打war包,方式有以下几种:install一下   找到war包的路径即可 另外:在eclipse中,选中项目 1.1 选中Export 1 ...

  2. iBatis的Settings节点参数详解[转]

    (1) cacheModelsEnabled: 是否启用SqlMapClient上的缓存机制.建议设为"true".默认值为“true”. (2) enhancementEnabl ...

  3. Exception in thread "main" java.util.concurrent.ExecutionException: org.apache.kafka.common.errors.TimeoutException: Expiring 1 record(s) for topic_test_1219-2: 30010 ms has passed since batch creatio

    代码如下 public static void producer1() throws ExecutionException, InterruptedException { Properties pro ...

  4. JConsole操作手册

    一篇Sun项目主页上介绍JConsole使用的文章,前段时间性能测试的时候大概翻译了一下以便学习,今天整理一下发上来,有些地方也不知道怎么翻,就保留了原文,可能还好理解点,呵呵,水平有限,翻的不好,大 ...

  5. 运行tomcat,报错:Socket bind failed: [730048] ?????????×???(Э?é/???????/???)????í??错误

    运行tomcat时,报错: Socket bind failed: [730048] ?????????×???(Э?é/???????/???)????í??错误 原因分析: 这是因为之前已开启了一 ...

  6. Python之print语句Python的注释

    话不多说直接切入正题 print语句可以向屏幕上输出指定的文字.比如输出'hello, world',用代码实现如下: >>> print 'hello, world' 注意: 1. ...

  7. linux-RabbitMQ安装命令

    一.RabbitMQ 1.安装配置epel源    $ rpm -ivh http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.no ...

  8. iphone动态下拉菜单

    介绍:实现带动画效果的下拉菜单.用户按下菜单按钮,出现下拉按钮,用户松开菜单按钮,下拉按钮收回. 测试环境:Xcode 4.3, iOS 5.0. 效果图: jQuery特效:http://www.h ...

  9. Adobe 产品更新直接下载链接

    mac:http://prodesigntools.com/adobe-cc-2015-updates-links-mac.html win:http://prodesigntools.com/ado ...

  10. BEC translation exercise 7

    在挑选时我们完全出自疏忽而漏过了这篇短文.In making the selection we passed this short piece by quite inadvertently. we l ...