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 ...
随机推荐
- Ubuntu + Nginx 配置全站https访问
最近跟室友要一起搞一个个人公众号,提前想把生态想清楚了,所以准备部署一个网站 正好公司有Microsoft Visual Studio Professional订阅,每个月有50刀免费额度,对于Azu ...
- JavaScript·DOM,BOM
YI.DOM 1.创建DOM 2.删除DOM 3.文档碎片 文档碎片可以提高DOM操作性能(理论上) 文档碎片(类似于一个口袋,先将多个元素放在口袋里,放完之后,再将口袋放到最终要插入的元素中): d ...
- Struts2 前台显示问题
遇到的问题: 查询字段相同值的和的时候用到了sum函数,导致和实体类的不一样,无法取到. 开始的时候的代码. ; 这样的话SUM(o_count)无法显示. 我想把SUM(o_count)设置为实体类 ...
- Struts2 action 跳转到web-inf下,
初学,这个问题困扰了1天.刚开始以为代码或者是配置文件哪里写错了,仔细检查了好几遍确定代码没有错,实在没办法了,准备发帖求助.就在我截图的时候,突然发现我的@Action中有点别扭,即使他没有报错. ...
- Mysql远程访问报错2003
如果没有权限新建一个mysql用户给添加远程连接的权限(推荐设置) 1.例如,你想admin使用123456从任何主机连接到mysql服务器的话. GRANT ALL PRIVILEGES ON *. ...
- flask 手机号码正则匹配的简单操作
1 导包 Import re 2 匹配邮箱 ret=re.match("[a-zA-Z0-9]{4,20}@163\.com",字符串) If ret: print(ret.gro ...
- mysql执行sql脚本文件
mysql执行sql脚本文件 方法一:使用cmd命令执行(windows下,unix或Linux在的其控制台下) [MySQL的bin目录]\mysql –u用户名 –p密码 –D数据库<[sq ...
- android app demo
package jczb.shoping.model; import java.io.Serializable; import android.R.string; //登录所需要的字段信息 publi ...
- 解决ubuntu输入正确用户密码重新跳到无法登录
解决方法:我们需要将.Xauthority的拥有者改为登陆用户(或者干脆将.Xauthority删除,此法转自网上,本人未验证)开机后在登陆界面按下shift + ctrl + F1进入tty命令行终 ...
- 旋转数组的最小数字(JAVA)
旋转数组的最小数字 题目描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转. 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素. 例如数组{3,4,5,1,2}为{1,2 ...