今日内容

  模块知识

  内置模块

    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. python报错: invalid syntax

    invalid syntax: 无效的语法. 解决办法:查看当前语句中的  , 如果当前行没找到错误,依次往上找,往上找时可以利用是否有输出进行快速查找. 原因:python语法很严格,少了左括号.右 ...

  2. 引用类型(C# 参考)

    C# 中有两种类型:引用类型和值类型. 引用类型的变量存储对其数据(对象)的引用,而值类型的变量直接包含其数据. 对于引用类型,两种变量可引用同一对象:因此,对一个变量执行的操作会影响另一个变量所引用 ...

  3. python认识及环境变量

    什么是python? python是一种脚本语言,是高级语言.计算机只能识别机器语言,在机器语言上是汇编语言,再往上是高级语言.高级语言的基础是C语言. python语言较为简单,易入门. pytho ...

  4. java 储存机制

    1.栈 statck 局部变量名称 2.堆 heap 带new的 3.方法区 method area .class

  5. 8.for循环及练习

    For循环:   虽然所有循环结构都可以用 while 或者 do...while 表示,但Java提供了另一种语句— —for循环,使一些循环结构变的更加简单. for 循环语句是支持迭代的一种通用 ...

  6. QEMU和KVM的关系

    首先KVM(Kernel Virtual Machine)是Linux的一个内核驱动模块,它能够让Linux主机成为一个Hypervisor(虚拟机监控器).在支持VMX(Virtual Machin ...

  7. Set,Multiset,Iterator(迭代器)详解

    Set,Multiset,Iterator(迭代器) Iterator:迭代器 我们可以发现所谓一些数据结构比如说数组和链表,它们都有一些相似的性质.我们看下面两个例子: 数组:定义数组\(int~a ...

  8. 个人第4次作业—Alpha项目测试

    这个作业属于哪个课程 课程链接 这个作业要求在哪里 作业要求 团队名称 CTRL_IKUN(团队博客) 这个作业的目标 对非本小组的三个项目进行软件测试 一.测试人员个人信息 学号 201731032 ...

  9. 团队项目——Alpha发布1

    这个作业属于哪个课程 https://edu.cnblogs.com/campus/xnsy/GeographicInformationScience/homework 这个作业要求在哪里 https ...

  10. php--->单例模式封装mysql操作类

    php 单例模式封装mysql操作类 单例模式的必要条件(三私一公) 私有的成员属性--防止类外引入这个存放对象的属性 私有的构造方法--为了防止在类外使用new关键字实例化对象 私有的克隆方法--为 ...