今日内容

  模块知识

  内置模块

    time/datatime/json/其他

内容回顾&作业题

  重点知识点

    构造字典和函数对应的关系,避免重复的if  else

    a = 1 b = 2 -----> a,b = b,a

    装饰器

    找文件路径

    脚本参数

    sys.exit

    range/xrange

    读大文件

    面试题如果遇到有歧义,一定要给出多种情况。

今日内容

  1.模块基础知识

    内置模块,python内部提供的功能。

      示例一:    

  1.         import sys
            print(sys.argv)

    第三方模块,下载/安装/使用

      示例一:     

  1.         #把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

        安装错了

      自定义模块

示例:

  1. xxxx.py
    def f1():
    pass
    def f2():
    pass
  2.  
  3. #在x1.py文件中
    #调用xxxx文件自定义模块的功能
    import xxxx
    xxxx.f1()
    xxxx.f2()
  4.  
  5. #运行
    python x1.py     

  2.内置模块

    (1)os

      os.makedirs 创建目录与子目录

示例一:

  1. 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 创建目录

示例一:

  1. #将当前目录下的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中的路径挨个查找

示例一:

  1. #新添加一个模块存储路径的方法如下:
    import sys
    sys.path.append('d:\\')
    for item in sys.path:
    print(item)

      sys是解释器相关的数据:递归次数/引用次数(sys.getrefcount)

     (3)json

      json是一个特殊的字符串。【长的像列表/字典/字符串/数字/真假】

      注意:json 是一个字符串,json格式是必须是以列表或是字典开始的

示例一:

  1. 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中会将元组转换为列表,且无集合

示例二:

  1. #反序列化,将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. Yolo V3损失函数占个坑

    https://blog.csdn.net/weixin_43384257/article/details/100974776目前来看讲的最清楚的博客 https://zhuanlan.zhihu.c ...

  2. 基于Saltstack、Artifactory打造传统模式下持续部署平台

    一.持续部署 1. 现状 由于没有建立标准的持续部署流程,导致了版本管理混乱,制品管理混乱,上线持续时间长,上线测试覆盖不全面,业务流量上升后故障较多,排查复杂.运维.测试.开发人员每次版本迭代的时候 ...

  3. 性能测试-详细的 TPS 调优笔记

    概述 在本地针对项目的登录接口做了一次简单的压力测试.200并发持续120s,观察吞吐量 运行结束之后,吞吐量是这样的 如图所示,吞吐量波动巨大,完全不正常.现在我们需要去观察一下服务器了 mpsta ...

  4. 【C_Language】---C文件学习

    ---恢复内容开始--- 又看了一遍文件的知识点了,断断续续已经看了2-3遍,也就这次花了点时间做了一下总结,以后我想都不会再去翻书了,哈哈. 1. 基于缓冲区的文件操作2. 打开关闭文件3. 单个字 ...

  5. Nginx的一理解(1)

    1.请解释一下什么是Nginx? 答:Nginx是一个web服务器和反向代理服务器,用于HTTP.HTTPS.SMTP.POP3和IMAP协议. 2.请列举Nginx的一些特性? 答:Nginx服务器 ...

  6. 洛谷 P1658 购物

    题目链接 题目描述 你就要去购物了,现在你手上有N种不同面值的硬币,每种硬币有无限多个.为了方便购物,你希望带尽量少的硬币,但要能组合出1到X之间的任意值. 题目分析 题目要求组合出1到X之间的任意值 ...

  7. Kettle自定义jar包供javascript使用

    我们都知道 Kettle 是用 Java 语言开发,并且可以在 JavaScript 里面直接调用 java 类方法.所以有些时候,我们可以自定义一些方法,来供 JavaScript 使用. 本篇文章 ...

  8. .net Core Autofac稍微高级一点的方法

    前情摘要 前段时间写了autofac的注入但是每次都需要去修改startup这应该不是大家想要的. 至少不是我想要的. 网上有朋友说可以创建一个基础类来时间. 好了吹牛时间结束我们开始干点正事. 创建 ...

  9. 关于C++读入数字按位取出与进制转换问题

    这一片博客我就不写具体的一个题了,只是总结一种典型问题——读入数字按位取出. 就拿数字12345举例吧. 是首先,我们要取出个位.这样取出: 12345/1=12345 12345%10=5.    ...

  10. Python-直接存储类实例作为序列的元素

    如果我们需要存储的数据有很多属性,并且存储的数量很多,可选择定义一个类来表示数据类型,而类的实体作为单个的成员进行存储,这样做的好处是可以只存储一个容器,而不需要每次都存储大量的数据,并且可以限制对数 ...