第四十二回 假李逵翦径劫单身 黑旋风沂岭杀四虎-python读写csv和json数据

news2024/9/22 8:27:07

李逵答应了宋江三件事:不可吃酒,独自前行,不带板斧。李逵痛快答应了,挎一口腰刀,提着朴刀,带了一锭大银子,三五个小银子就下山去了。

宋江放心不下,于是请同乡朱贵也回家一趟,好打探李逵的信息。朱贵到了沂水县西门外,见李逵站在通缉宋江、戴宗和李逵的榜单前面,赶快把李逵给拉走了。

李逵和朱贵在朱富的店里吃饭休息,五更天,李逵出发。朱贵建议他走大路,李逵说“我怕甚鸟”,于是走了小路。

李逵碰到了假李逵劫道,刚开始发善心放了他。结果后来发现他撒谎且还想害李逵,被李逵把他杀掉,房子也烧了。

李逵背着娘回梁山,还是走的深山僻静小路,半路老娘口渴,李逵打水回来,发现老娘已经被老虎吃了。李逵气的把一窝老虎四只全杀了。猎户们见李逵杀死了四只老虎,都很高兴,请李逵到曹太公庄上喝酒。

李逵一人杀四虎,跟武松打虎相比,得益于有好武器的加持。python里有专门的csv和json处理模块,可以极大提高数据处理的效率。

python读写csv和json数据

python读写csv数据

在Python中,读写CSV(Comma Separated Values)数据通常使用内置的csv模块。以下是一个简单的例子,展示了如何使用csv模块来读取和写入CSV文件。 首先,假设我们有一个名为example.csv的文件,内容如下:

name,age,city
Alice,28,New York
Bob,22,Los Angeles
Charlie,30,Chicago

读取CSV文件

import csv  
  
# 打开CSV文件并读取内容  
with open('example.csv', mode='r', newline='') as file:  
    reader = csv.reader(file)  
      
    # 遍历CSV文件的每一行  
    for row in reader:  
        print(row)  # 打印每一行的内容,作为列表  
  
# 输出:  
# ['name', 'age', 'city']  
# ['Alice', '28', 'New York']  
# ['Bob', '22', 'Los Angeles']  
# ['Charlie', '30', 'Chicago']

写csv文件

import csv  
  
# 定义要写入的数据  
data = [  
    ['name', 'age', 'city'],  
    ['Alice', '28', 'New York'],  
    ['Bob', '22', 'Los Angeles'],  
    ['Charlie', '30', 'Chicago']  
]  
  
# 打开(或创建)一个CSV文件并写入数据  
with open('output.csv', mode='w', newline='') as file:  
    writer = csv.writer(file)  
      
    # 写入CSV文件的每一行  
    for row in data:  
        writer.writerow(row)  
  
# 现在,'output.csv' 文件包含了和上面例子中一样的数据

在上面的例子中,csv.reader用于读取CSV文件,而csv.writer用于将数据写入CSV文件。open函数用于打开文件,并指定模式('r'用于读取,'w'用于写入)。newline=''参数在写入时非常有用,它确保了在不同的操作系统上都能正确地写入行。

csv.reader返回的是一个迭代器,它会产生CSV文件的每一行,每一行都是一个字符串列表。而csv.writer的writerow方法则用于将一个列表作为一行写入CSV文件。

记住,CSV文件只是一个简单的文本文件,其中的数据由逗号分隔。你可以使用任何文本编辑器来查看或编辑它。同时,csv模块也支持其他分隔符,如制表符,你可以通过传递delimiter参数来指定。

 
 

Python读写JSON数据

JSON,全称JavaScript Object Notation,是一种轻量级的数据交换格式,易于阅读和编写。虽然它最初是为JavaScript设计的,但由于其简单性和普遍性,它已经被许多其他编程语言广泛采用,包括Python。在Python中,json模块使得处理JSON数据变得非常简单。

JSON数据结构

JSON主要支持两种数据结构,对象和数组,在python中对应字典和列表,比如:

对象、字典(dict):这是一种无序的键值对集合使用大括号,格式如下:

    {  "name": "Zhangsan",  

        "age": 30,  

        "city": "New York"  }

数组、列表:这是一个有序的值列表,使用方括号[]表示:

[ "apple",  

  "banana",  

  "cherry"  ]

编解码

编码:Python对象到JSON

使用json.dumps()函数,可以将Python对象(如字典或列表)转换为JSON格式的字符串。

解码:JSON到Python对象

使用json.loads()函数,可以将JSON格式的字符串转换为Python对象(如字典或列表)

python处理json举例

import json
json_string = '{"name": "Zhangsan", "age": 30, "city": "Jining"}'  
  
# 使用json.loads()函数来解析这个json字符串  
json_data = json.loads(json_string)  
# 使用json.dumps()函数来将pyhton对象转回json字符串  
json_data_string = json.dumps(json_data)
  
# 观察每一步的数据类型,可以发现对json_string先解析再dump,最终得到的字符串跟原字符串相等。
print("json编码的原字符串:", type(json_string), json_string)
print("json解析后:", type(json_data), json_data)
print("json转换回原字符串:", type(json_data_string), json_data_string)
print("json解析再转回原json字符串:", json_string == json_data_string)

json文件读取


json模块还可以直接从文件读取JSON数据或将JSON数据写入文件。

# 写到文件
with open('data.json', 'w') as f:
    json.dump(json_data, f)

# 打开并读取JSON文件  
with open('data.json', 'r') as f:  
    readjsondata = json.load(f)  
  
# 现在,`readjsondata`变量包含了JSON文件中的数据,可以像操作Python字典一样操作它  
print(type(readjsondata), readjsondata)

众人都来看虎,那假李逵的老婆正好也在,于是告知了曹太公和里正,大家决定一边劝醉李逵,一边上报县里。

县里派了都头李云来拿李逵,李云是朱富的师傅。返回县里的时候,朱富和朱贵用蒙汗药迷倒了他们,李逵把除李云外的人都杀了,然后李逵和朱富在路边等李云来。

欲知后事如何,且听下回分解。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1468351.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Mybatis总结--传参

MyBatis 传递参数:从 java 代码中把参数传递到 mapper.xml 文件 六、一个简单参数: Dao 接口中方法的参数只有一个简单类型( java 基本类型和 String ), 占位符 #{ 任意字符 } ,和方法的参数名无关…

浅谈SpringMVC

什么是MVC模式 MVC:MVC是一种设计模式 MVC的原理图: 分析: 1:M-Model 模型(完成业务逻辑:有javaBean构成,servicedaoentity) 2:V-View 视图(做界面的展示…

MySQL sql注意点

本文列取了常用但是容易遗漏的一些知识点。另外关键词一般大写,为了便于阅读所以很多小写。也为了给自己查缺补漏。 distinct(去重) 也许你经常对单个字段去重,并且知道不建议用distinct,而是group by,因为…

Cesium 展示——加载 tileset.json 格式的模型数据

文章目录 需求分析需求 已给 tileset.json 文件,现需加载该模型文件, 该模型特点:模型上的各模块均可以进行点击设置,且相机视角拉近后可以看到内部隐藏的物件模块 分析 tileset.json :模型数据【模型加载】方法export function init3dTileLayer (option) {var tilesetMo…

让AI玩一千万次贪吃蛇

如果让人工智能来玩贪吃蛇游戏,会发生什么? 图源:DALLE 目录 贪吃蛇实现 游戏规则 游戏实现 Q学习算法实现 Q学习简介 Q表和Q值 Q学习更新规则 Q学习在贪吃蛇游戏中的应用 整体项目完整代码 运行过程截图 代码分析 环境设置 …

SORA技术报告

文档链接:https://openai.com/research/video-generation-models-as-world-simulators 文章目录 Video generation models as world simulatorsTurning visual data into patchesVideo compression networkSpacetime latent patchesScaling transformers for video …

Linux使用C语言获取进程信息

Linux使用C语言获取进程信息 Author: OnceDay Date: 2024年2月22日 漫漫长路,才刚刚开始… 全系列文章可查看专栏: Linux实践记录_Once_day的博客-CSDN博客 参考文档: Linux proc目录详解_/proc/mounts-CSDN博客Linux下/proc目录介绍 - 知乎 (zhihu.com)Linux内…

该如何选择适合的服务器

服务器,简单来说,就是一个专门用来为其他计算机提供服务的计算机。 我们熟悉的网站、应用和各种在线服务,绝大多数都运行在一台或多台服务器中,所以说服务器是整个网络世界的基石。 服务器一般具有高速的CPU运算、高数据吞吐、可扩…

CrossOver虚拟机软件2024有哪些功能?最新版本支持哪些游戏?

CrossOver由codewaver公司开发的类虚拟机软件,目的是使linux和Mac OS X操作系统和window系统兼容。CrossOver不像Parallels或VMware的模拟器,而是实实在在Mac OS X系统上运行的一个软件。CrossOvers能够直接在Mac上运行Windows软件与游戏,而不…

算法练习-组合【回溯算法】(思路+流程图+代码)

难度参考 难度:困难 分类:回溯算法 难度与分类由我所参与的培训课程提供,但需 要注意的是,难度与分类仅供参考。且所在课程未提供测试平台,故实现代码主要为自行测试的那种,以下内容均为个人笔记&#xff0…

Code-Audit(代码审计)习题记录6-7

介绍: 自己懒得搭建靶场了,靶场地址是 GitHub - CHYbeta/Code-Audit-Challenges: Code-Audit-Challenges为了方便在公网练习,可以随地访问,本文所有的题目均来源于网站HSCSEC-Code Audit 6、习题6 题目内容如下: 源代…

Python+Flask低代码数据融合引擎工具

我用了2年多时间开发了一个低代码数据融合引擎工具 1.整体界面 2.主要功能 1)通过excel文件生成mysql数据表结构及数据保存 说明:功能细节包括(excel文件上传,文件内容预览,建表导入数据),难点在于对excel数据类型判断,并与mysql数据类型对应 2)建立数据表结构并批量导入数据 …

python程序设计基础:字符串与正则表达式

第四章:字符串与正则表达式 4.1字符串 最早的字符串编码是美国标准信息交换码ASCII,仅对10个数字、26个大写英文字母、26个小写英文字母及一些其他符号进行了编码。ASCII码采用1个字节来对字符进行编码,最多只能表示256个符号。 随着信息技…

Ubuntu20.04开启/禁用ipv6

文章目录 Ubuntu20.04开启/禁用ipv61.ipv62. 开启ipv6step1. 编辑sysctl.confstep2. 编辑网络接口配置文件 3. 禁用ipv6(sysctl)4. 禁用ipv6(grub)附:总结linux网络配置 Ubuntu20.04开启/禁用ipv6 1.ipv6 IP 是互联网…

openssl

最新版本3.0 使用 生成自签名的根证书 openssl req -x509 -new -key rootCA.key -days 3650 -out rootCA.crt -subj "/CCA/STCA/LCA/OCA/OUCA/CNCA" pem格式 BASE64,会有PUBLIC KEY表示公钥,PRIVATE KEY表示私钥 根据私钥生成公钥 openss…

工业信息安全的神秘武器——德迅卫士(主机安全)

前言: 服务器作为承载公司业务及内部运转的底层平台,其稳定、安全地运行是公司的正常发展的前提保障。由于主机上运行着各种各样的业务,会存在着各类漏洞及安全问题。攻击者以此为目标,通过对服务器的攻击来获利,给公司…

英文输入法(C 语言)

题目来自于博主算法大师的专栏:最新华为OD机试C卷AB卷OJ(CJavaJSPy) https://blog.csdn.net/banxia_frontend/category_12225173.html 题目 主管期望你来实现英文输入法单词联想功能,需求如下: 依据用户输入的单词前…

Java智慧工地云综合管理平台SaaS源码 助力工地实现精细化管理

目录 智慧工地系统介绍 1、可视化大屏 2、视频监控 3、Wi-Fi安全教育 4、环境监测 5、高支模监测 6、深基坑监测 7、智能水电监测 8、塔机升降安全监测 智慧工地系统功能模块 1、基础数据管理 2、考勤管理 3、安全隐患管理 4、视频监控 5、塔吊监控 6、升降机监…

三分钟快速搭建家纺行业小程序商城:轻松实现电子商务梦想

随着互联网的普及和移动设备的广泛使用,越来越多的商业活动正在向数字化转型。在这个过程中,小程序商城作为一种新型的电子商务模式,正逐渐受到商家的青睐。本文将通过具体步骤,指导读者如何开发一个纺织辅料小程序商城。 一、选择…

Capto 一款适用Mac屏幕录制编辑软件

Capto 是一款功能强大的 Mac 屏幕录制和编辑软件,能够满足用户的多种录制和编辑需求。无论是个人还是专业用户,都可以通过 Capto 实现高质量的屏幕录制和编辑。 首先,Capto 提供了全面的屏幕录制功能,包括全屏、选中区域、甚至是摄…