20200223--python学习第15天
今日内容
模块知识
内置模块
time/datatime/json/其他
内容回顾&作业题
重点知识点
构造字典和函数对应的关系,避免重复的if else
a = 1 b = 2 -----> a,b = b,a
装饰器
找文件路径
脚本参数
sys.exit
range/xrange
读大文件
面试题如果遇到有歧义,一定要给出多种情况。
今日内容
1.模块基础知识
内置模块,python内部提供的功能。
示例一:
- import sys
print(sys.argv)
第三方模块,下载/安装/使用
示例一:
- #把pip.exe所在的目录添加到环境变量中。
pip install 要安装的模块名称 #pip install xlrd
网慢:报错的信息中会出现timed out 等关键字
python36 -m pip install --update pip:是针对错误信息中含有“Fatal error in launcher:unable to create process using'"d:\python3.6\python.exe" "d:\python3.6\Scripts\pip.exe" install xlrd'”
安装完成后,如果导入不成功
重启python
安装错了
自定义模块
示例:
- xxxx.py
def f1():
pass
def f2():
pass- #在x1.py文件中
#调用xxxx文件自定义模块的功能
import xxxx
xxxx.f1()
xxxx.f2()- #运行
python x1.py
2.内置模块
(1)os
os.makedirs 创建目录与子目录
示例一:
- import os
path = r"db\xx\xo\xx.txt"
file_folder = os.path.dirname(path)
if not os.path.exists(file_folder):
os.makedirs(file_folder)
with open(path,mode= 'w',encoding = "utf-8") as f:
f.write('你好')
os.mkdir 创建目录
示例一:
- #将当前目录下的db文件重命名为sb
import os
os.rename('db','sb')
os.rename 重命名
os.path.join 路径的拼接
os.path.dirname 获取上级目录
os.path.abspath 获取文件的绝对路径
os.path.exists 判断一个路径是否存在
os.stat('文件路径').st_size 判断一个文件的大小
os.listdir 获取路径下的所有文件【仅限第一层】
os.walk 获取路径下的所有文件【所有层】
(2)sys
sys.argv 获取执行脚本时的参数
sys.path 默认python中去导入模块时,会按照sys.path中的路径挨个查找
示例一:
- #新添加一个模块存储路径的方法如下:
import sys
sys.path.append('d:\\')
for item in sys.path:
print(item)
sys是解释器相关的数据:递归次数/引用次数(sys.getrefcount)
(3)json
json是一个特殊的字符串。【长的像列表/字典/字符串/数字/真假】
注意:json 是一个字符串,json格式是必须是以列表或是字典开始的
示例一:
- import json
#json格式:
#序列化 将python中的值转换为json格式的字符串。
v = [12,3,4,{'k1':'v1'},'True','asd',(12,33,44),[1,2,3]]
v1 = json.dumps(v)
print(v1)
#输出结果为:[12, 3, 4, {"k1": "v1"}, "True", "asd", [12, 33, 44], [1, 2, 3]]
#注意:在python中会将元组转换为列表,且无集合
示例二:
- #反序列化,将json格式的字符串转换为python的数据类型
import json
v2 = '["alex",123]'
print(type(v2)) #输出结果为:字符串
v3 = json.loads(v2)
print(v3,type(v3)) #输出结果为:['alex', 123] <class 'list'>
20200223--python学习第15天的更多相关文章
- Python学习总结15:时间模块datetime & time & calendar (二)
二 .datetime模块 1. datetime中常量 1)datetime.MINYEAR,表示datetime所能表示的最小年份,MINYEAR = 1. 2)datetime.MAXYEAR ...
- Python学习(15)文件/IO
目录 Python 文件I/O 打印到屏幕 读取键盘输入 打开和关闭文件 File对象属性 文件定位 重命名和删除文件 Python的目录 Python 文件I/O 本章只讲述所有基本的的I/O函数, ...
- Python学习笔记15—mysql的操作
安装 Python-MySQLdb pip install mysql-Python Python对mysql的操作 建立一个实验数据库demo mysql> create database d ...
- python学习笔记15(面向对象编程)
虽然Python是解释性语言,但是它是面向对象的,能够进行对象编程. 一.如何定义一个类 在进行python面向对象编程之前,先来了解几个术语:类,类对象,实例对象,属性,函数和方法. 类是对现实世界 ...
- 从零开始的Python学习Episode 15——正则表达式
正则表达式 正则表达式(或 RE)是一种小型的.高度专业化的编程语言,(在Python中)它内嵌在Python中,并通过 re 模块实现,所以使用时要导入re模块.正则表达式模式被编译成一系列的字节码 ...
- Python学习:15.Python面向对象(二、继承的各种情况)
一.什么是继承 继承是一种创建类的方法,在python中,一个类可以继承来自一个或多个父.原始类称为基类或超类. #创建父类 class Parent1: pass class Parent2: pa ...
- Python 学习 第15篇:日期和时间
datetime模块中包含五种基本类型:date.time.datetime.timedelta和tzinfo,tz是time zone的缩写,tzinfo用于表示时区信息. 一,date类型 dat ...
- Python 学习笔记15 类 - 继承
我们在编程的过程中,并非都是要重头开始.比如其他人已经有现成的类,我们可以使用其他找人编写的类.术语称之为: 继承. 当一个类继承例外一个类时,它可以获得这个类的所有属性和方法:原有的类称之为 父类, ...
- Python学习基础笔记(全)
换博客了,还是csdn好一些. Python学习基础笔记 1.Python学习-linux下Python3的安装 2.Python学习-数据类型.运算符.条件语句 3.Python学习-循环语句 4. ...
- Python学习笔记(15)- os\os.path 操作文件
程序1 编写一个程序,统计当前目录下每个文件类型的文件数,程序实现如图: import os def countfile(path): dict1 = {} # 定义一个字典 all_files = ...
随机推荐
- Yolo V3损失函数占个坑
https://blog.csdn.net/weixin_43384257/article/details/100974776目前来看讲的最清楚的博客 https://zhuanlan.zhihu.c ...
- 基于Saltstack、Artifactory打造传统模式下持续部署平台
一.持续部署 1. 现状 由于没有建立标准的持续部署流程,导致了版本管理混乱,制品管理混乱,上线持续时间长,上线测试覆盖不全面,业务流量上升后故障较多,排查复杂.运维.测试.开发人员每次版本迭代的时候 ...
- 性能测试-详细的 TPS 调优笔记
概述 在本地针对项目的登录接口做了一次简单的压力测试.200并发持续120s,观察吞吐量 运行结束之后,吞吐量是这样的 如图所示,吞吐量波动巨大,完全不正常.现在我们需要去观察一下服务器了 mpsta ...
- 【C_Language】---C文件学习
---恢复内容开始--- 又看了一遍文件的知识点了,断断续续已经看了2-3遍,也就这次花了点时间做了一下总结,以后我想都不会再去翻书了,哈哈. 1. 基于缓冲区的文件操作2. 打开关闭文件3. 单个字 ...
- Nginx的一理解(1)
1.请解释一下什么是Nginx? 答:Nginx是一个web服务器和反向代理服务器,用于HTTP.HTTPS.SMTP.POP3和IMAP协议. 2.请列举Nginx的一些特性? 答:Nginx服务器 ...
- 洛谷 P1658 购物
题目链接 题目描述 你就要去购物了,现在你手上有N种不同面值的硬币,每种硬币有无限多个.为了方便购物,你希望带尽量少的硬币,但要能组合出1到X之间的任意值. 题目分析 题目要求组合出1到X之间的任意值 ...
- Kettle自定义jar包供javascript使用
我们都知道 Kettle 是用 Java 语言开发,并且可以在 JavaScript 里面直接调用 java 类方法.所以有些时候,我们可以自定义一些方法,来供 JavaScript 使用. 本篇文章 ...
- .net Core Autofac稍微高级一点的方法
前情摘要 前段时间写了autofac的注入但是每次都需要去修改startup这应该不是大家想要的. 至少不是我想要的. 网上有朋友说可以创建一个基础类来时间. 好了吹牛时间结束我们开始干点正事. 创建 ...
- 关于C++读入数字按位取出与进制转换问题
这一片博客我就不写具体的一个题了,只是总结一种典型问题——读入数字按位取出. 就拿数字12345举例吧. 是首先,我们要取出个位.这样取出: 12345/1=12345 12345%10=5. ...
- Python-直接存储类实例作为序列的元素
如果我们需要存储的数据有很多属性,并且存储的数量很多,可选择定义一个类来表示数据类型,而类的实体作为单个的成员进行存储,这样做的好处是可以只存储一个容器,而不需要每次都存储大量的数据,并且可以限制对数 ...