今日内容

  模块知识

  内置模块

    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天的更多相关文章

  1. Python学习总结15:时间模块datetime & time & calendar (二)

    二 .datetime模块  1. datetime中常量 1)datetime.MINYEAR,表示datetime所能表示的最小年份,MINYEAR = 1. 2)datetime.MAXYEAR ...

  2. Python学习(15)文件/IO

    目录 Python 文件I/O 打印到屏幕 读取键盘输入 打开和关闭文件 File对象属性 文件定位 重命名和删除文件 Python的目录 Python 文件I/O 本章只讲述所有基本的的I/O函数, ...

  3. Python学习笔记15—mysql的操作

    安装 Python-MySQLdb pip install mysql-Python Python对mysql的操作 建立一个实验数据库demo mysql> create database d ...

  4. python学习笔记15(面向对象编程)

    虽然Python是解释性语言,但是它是面向对象的,能够进行对象编程. 一.如何定义一个类 在进行python面向对象编程之前,先来了解几个术语:类,类对象,实例对象,属性,函数和方法. 类是对现实世界 ...

  5. 从零开始的Python学习Episode 15——正则表达式

    正则表达式 正则表达式(或 RE)是一种小型的.高度专业化的编程语言,(在Python中)它内嵌在Python中,并通过 re 模块实现,所以使用时要导入re模块.正则表达式模式被编译成一系列的字节码 ...

  6. Python学习:15.Python面向对象(二、继承的各种情况)

    一.什么是继承 继承是一种创建类的方法,在python中,一个类可以继承来自一个或多个父.原始类称为基类或超类. #创建父类 class Parent1: pass class Parent2: pa ...

  7. Python 学习 第15篇:日期和时间

    datetime模块中包含五种基本类型:date.time.datetime.timedelta和tzinfo,tz是time zone的缩写,tzinfo用于表示时区信息. 一,date类型 dat ...

  8. Python 学习笔记15 类 - 继承

    我们在编程的过程中,并非都是要重头开始.比如其他人已经有现成的类,我们可以使用其他找人编写的类.术语称之为: 继承. 当一个类继承例外一个类时,它可以获得这个类的所有属性和方法:原有的类称之为 父类, ...

  9. Python学习基础笔记(全)

    换博客了,还是csdn好一些. Python学习基础笔记 1.Python学习-linux下Python3的安装 2.Python学习-数据类型.运算符.条件语句 3.Python学习-循环语句 4. ...

  10. Python学习笔记(15)- os\os.path 操作文件

    程序1 编写一个程序,统计当前目录下每个文件类型的文件数,程序实现如图: import os def countfile(path): dict1 = {} # 定义一个字典 all_files = ...

随机推荐

  1. git版本管理工具(二)

    1.查看历史版本 ·git log ·git reflog 2.版本回退 ·git reset --hard HEAD^(HEAD代表当前版本) ·HEAD^代表回退到上一个版本 以此类推 ·HEAD ...

  2. mysql中更改字符集为utf8&&mysql中文输入不了问题解决

    写给TT:对不起啦!! 嗯,输入不了中文,大多数问题是mysql的字符集设置的问题,当然,别的问题也有可能, 这里我们用两种方法设置mysql的字符集,图形化工具和命令行的方式(一种操作完即可) 一, ...

  3. 「 从0到1学习微服务SpringCloud 」05服务消费者Fegin

    系列文章(更新ing): 「 从0到1学习微服务SpringCloud 」01 一起来学呀! 「 从0到1学习微服务SpringCloud 」02 Eureka服务注册与发现 「 从0到1学习微服务S ...

  4. 事件总线 EventBus

    661. .net中事件模型很优雅的实现了观察者模式,同时被大量的使用在各种框架中. [2016-04-30 10:52:42]662. Prism框架中实现了一个典型的EventAggregator ...

  5. HGE引擎改进——2014/3/4

    2014/3/4 更新 1.提升资源包管理效率 2.Show库整合.目前Show库有Picture.Frame.Animation和Particle类,以及PictureData和ParticleSy ...

  6. GitHub 上这几个沙雕项目,够我玩几天

    在家里都憋坏了吧?每天睡了吃吃了睡,该找点事做做了,今天推荐几个好(沙)玩(雕)的开源项目,好在家打发时间. 91 吴先生 一个在线的 PornHub 风格 Logo 生成工具 Logoly.Pro ...

  7. Dynamics 365 CRM 配置field service mobile

    配置field service mobile其实微软是有官方文档的, 但是没有坑的微软产品不是好产品. 一些细节设置文中还是没有考虑到的. 所以这里带大家配置一下field service mobil ...

  8. 异想家Win10系统安装的软件与配置

    1.C盘推荐一个硬盘,256G,安装好驱动,显卡配置好高性能,激活Win10,屏蔽WIn10驱动更新(Show or hide updates.diagcab),改电脑名称为Sandeepin-PC. ...

  9. C语言寒假大作战02

    2.2.1 寒假大作战 问题 回答 这个作业属于哪个课程 2019软件四班C语言寒假作业大作战 这个作业要求在哪里 作业要求 我在这个课程的目标是 用switch完成一个menu基本框架 这个作业在那 ...

  10. Ubuntu 入门笔记(1)

    在阿里云上申请了一个云服务器,开始学习Linux.我选择的是Ubuntu 14.04 ,在登录时就绕了我好长时间,输入用户名是有显示的,但是输入密码就没有反应了,查找了之后才发现原来这是Ubuntu ...