python之路——20
学习内容
1.序列化——数据类型转向字符串数据类型
反序列化——字符串转向数据类型
2.序列化模块
json模块
通用序列化格式
弊端:只有少部分数据类型可通过json转化
pickle模块
所有的python中的数据类型都是可以转换成字符串形式
弊端:pickle序列化的内容只有python能理解
且部分反序列化以来代码
shelve模块
3.模块导入习惯
1.内置模块--扩展模块--自定义模块
4.导入模块
1.import 模块名
#模块名,变量名与本文件不冲突
2.import 模块名 as 重命名的模块名
#提高代码的兼容性
3.from 模块名 import 变量名
#直接使用 变量名
#如果本文件有相同的变量名会冲突
4.from 模块名 import 变量名 as 重命名变量名
5.from 模块名 import 变量名1,变量名2
6.form 模块名 import *
7.__name__
代码区
1.练习代码
# json模块
'''
import json
dic1 = {'k1': 'v1'}
dic1_str = json.dumps(dic1)
print(dic1, dic1_str)
dic2 = json.loads(dic1_str)
print(dic2)
# 数字 字符串 列表 字典 元组(转成列表序列化,反序列化后成列表)
dic1 = {'k1': 'v1', 'k2': '中国'}
f = open('log', 'w', encoding='utf-8')
json.dump(dic1, f, ensure_ascii=False)
f.close() f = open('log', encoding='utf-8')
ret = json.load(f)
print(type(ret), ret)
f.close() l1 = [{'k1': '111'}, {'k2': '222'}, {'k3': '333'}]
f1 = open('log', 'w', encoding='utf-8')
import json
for dic in l1:
dic_str = json.dumps(dic)
f1.write(dic_str + '\n')
f1.close() f2 = open('log')
l = []
for line in f2:
dic = json.loads(line.strip())
l.append(dic)
f2.close()
print(l)
'''
from demo import money
money = 100
print(money)
python之路——20的更多相关文章
- 【python之路20】函数作为参数
1.函数可以作为参数 1)函数名相当于变量指向函数 2)函数名后面加括号表示调用函数 #!usr/bin/env python # -*- coding:utf-8 -*- def f1(args): ...
- Python之路【第十九篇】:爬虫
Python之路[第十九篇]:爬虫 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.另外一些不常使用 ...
- Python之路【第十八篇】:Web框架们
Python之路[第十八篇]:Web框架们 Python的WEB框架 Bottle Bottle是一个快速.简洁.轻量级的基于WSIG的微型Web框架,此框架只由一个 .py 文件,除了Pytho ...
- Python之路【第十七篇】:Django【进阶篇 】
Python之路[第十七篇]:Django[进阶篇 ] Model 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计表结构和字段 使用 MySQLdb 来连接 ...
- Python之路【第十六篇】:Django【基础篇】
Python之路[第十六篇]:Django[基础篇] Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了O ...
- Python之路【第十五篇】:Web框架
Python之路[第十五篇]:Web框架 Web框架本质 众所周知,对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端. 1 2 3 4 5 6 ...
- Python之路【第九篇】:Python操作 RabbitMQ、Redis、Memcache、SQLAlchemy
Python之路[第九篇]:Python操作 RabbitMQ.Redis.Memcache.SQLAlchemy Memcached Memcached 是一个高性能的分布式内存对象缓存系统,用 ...
- Python之路【第八篇】:堡垒机实例以及数据库操作
Python之路[第八篇]:堡垒机实例以及数据库操作 堡垒机前戏 开发堡垒机之前,先来学习Python的paramiko模块,该模块机遇SSH用于连接远程服务器并执行相关操作 SSHClient ...
- Python之路【第七篇】:线程、进程和协程
Python之路[第七篇]:线程.进程和协程 Python线程 Threading用于提供线程相关的操作,线程是应用程序中工作的最小单元. 1 2 3 4 5 6 7 8 9 10 11 12 1 ...
随机推荐
- Arch i3wm
pacman -S i3-gaps i3blocks i3status dmenu xprofile设置 nano /home/user/,xprofile export LANG=zh_CN.UTF ...
- [C# 基础知识系列]专题七: 泛型深入理解(一) (转载)
引言: 在上一个专题中介绍了C#2.0 中引入泛型的原因以及有了泛型后所带来的好处,然而上一专题相当于是介绍了泛型的一些基本知识的,对于泛型的性能为什么会比非泛型的性能高却没有给出理由,所以在这个专题 ...
- Excel 导入时如何下载模板信息(Java)
大家知道,我们在实现 Excel 上传的时候,会让我们去下载个模板,然后实现导入功能.在此我在这里记录下来,以便后续的使用... 首先思考一个问题是 这个模板这么给前台,还有这个模板是这么来的,刚开始 ...
- idea 从git上checkout项目下来,project没有文件目录结构
1.去到 查看sdk有没有配置 查看该部分是否是空的,如果没有显示项目,添加导入项目
- 小伙 zwfw-new.hunan.gov.cn.iname.damddos.com [222.240.80.52]
由于这个应用出问题非常影响用户体验:于是立马让运维保留现场 dump 线程和内存同时重启应用,还好重启之后恢复正常.于是开始着手排查问题.
- 启动和停止SQL Server服务三种形式
1.后台启动和停止服务 计算机>右键>管理>服务和应用>服务>sqlserver(MSSSQLSERVER) 2.配置管理器启动和停止服务 开始>所有程序>M ...
- [LeetCode&Python] Problem 70. Climbing Stairs
You are climbing a stair case. It takes n steps to reach to the top. Each time you can either climb ...
- 转:Eclipse Memory Analyzer入门学习笔记
原文地址:https://blog.csdn.net/cc907566076/article/details/79108782 Eclipse Memory Analyzer是一个快速而功能丰富的Ja ...
- Map的嵌套 练习
Map的嵌套 练习 利用迭代和增强for循环的两种方式实现如下效果 package cn.ccc; import java.util.HashMap;import java.util.Iterat ...
- Apache Commons 工具类简单使用
Apache Commons包含了很多开源的工具,用于解决平时编程经常会遇到的问题,减少重复劳动.下面是我这几年做开发过程中自己用过的工具类做简单介绍. 组件 功能介绍 BeanUtils 提供了对于 ...