![](https://img-blog.csdnimg.cn/20181219220652743.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Python 高级编程
文章平均质量分 89
全面而深入的介绍 Python 高级编程
David_Hernandez
NLP
展开
-
Django 高级编程之 Hello World
Django 高级编程之 Hello World1. 创建项目2. 创建 app3. 安装 MySQL 驱动4. 生成数据表1. 创建项目2. 创建 appTools -> Run manage.py Task -> 输入 startapp message,message为 app名在项目上新建四个目录,apps, log, media, static将 Message...原创 2019-01-22 01:45:51 · 345 阅读 · 0 评论 -
开发环境搭建
文章目录IDEPyCharmPython 代码添加注释本文将持续更新。IDEPyCharmPython 代码添加注释Preferences --> Editor --> File and Code Templates --> Python Script#!/usr/bin/env python# -*- coding: utf-8 -*-"""Copyright (c) 2020 Alex.com, Inc. All Rights ReservedThis module原创 2020-12-28 16:35:41 · 103 阅读 · 0 评论 -
Python实用技巧
Python避坑指南1. Crontab 配置 Python 定时任务1. Crontab 配置 Python 定时任务使用 Python 3 写脚本,但是在 Crontab 中配置定时任务,脚本包:UnicodeEncodeError: ‘ascii’ codec can’t encode characters in position 0-1: ordinal not in range(128)按理说,使用 Python 3 不应该再有这种错误,Python3 已经全部自动使用了 Unicode编原创 2021-03-15 14:32:52 · 326 阅读 · 0 评论 -
Python 高级编程之百问
Python 高级编程之百问1. 如何在列表、字典、集合中根据条件筛选数据?2. 如何为元组中每个元素命名,提高程序可读性?3. 如何根据字典中值的大小,对字典中的项排序?4. 如何统计序列中元素的出现频度?5. 如何让字典保持有序?6. 如何快速找到多个字典中的公共键?7. 如何实现用户的历史记录功能(最多N条)?8. 如何进行反向迭代以及如何实现反向迭代?9. 如何对迭代器做切片操作?10. ...原创 2020-02-01 18:02:35 · 511 阅读 · 0 评论 -
开发环境配置
开发环境配置1. 系统配置1.1 Mac OS1.1.1 常用工具2. 开发工具设置2.1 Intellij IDEA2.1.1 八个常用配置1. 系统配置1.1 Mac OS1.1.1 常用工具homebrewAlfredScroll Reverser: 用于鼠标滚轮反向2. 开发工具设置2.1 Intellij IDEA2.1.1 八个常用配置https://mp.w......原创 2018-11-23 16:57:50 · 853 阅读 · 0 评论 -
Python 高级编程之 asyncio并发编程
Python 高级编程之 asyncio并发编程1. asyncio 简介1.1 协程与 asyncio1.2 例子1. asyncio 简介1.1 协程与 asyncio协程编写的三个组成部分:1. 事件循环, 2. 回调(驱动生成器), 3. epoll(IO 多路复用)asyncio是python用于解决异步io编程的一整套解决方案。基于 asyncio 的框架有: tornad...原创 2018-12-22 19:08:42 · 1762 阅读 · 0 评论 -
Python 高级编程之协程和异步 IO
Python 高级编程之协程和异步 IO1. 并发、并行、同步、异步、阻塞、非阻塞1. 并发、并行、同步、异步、阻塞、非阻塞并发:一个时间段内,有几个程序在同一个 CPU 上运行,但是任意时刻只有一个程序在 CPU 上运行。并行:在任意时刻点上,有多个程序同时运行在**多个 CPU **上。如果 CPU 有个四颗,那么并行最多只有四个。基于以上,我们都说高并发,不说高并行。同步:指代码...原创 2018-12-19 21:58:57 · 1282 阅读 · 2 评论 -
Python 高级编程之多线程、多进程和线程池编程
多线程、多进程和线程池编程1. GIL2. 多线程编程2.1 通过Thread类实例化2.2 通过继承Thread来实现多线程1. GILGIL 全称:global interpreter lock 这是一个基于 C 语言的模块。python中一个线程对应于c语言中的一个线程。GIL 使得同一个时刻只有一个线程在一个cpu上执行字节码, 无法将多个线程映射到多个cpu上执行# 使用 di...原创 2018-11-12 12:54:00 · 867 阅读 · 0 评论 -
Python高级编程之 Socket 编程
Socket 编程1. Socket 编程简介2. 基于 Socket 的简单聊天程序2.1 服务器端2.2 客户端3. 使用 Socket 模拟 Http 请求1. Socket 编程简介注意,**Socket 编程与 Http 请求不同,Socket 编程当连接完成后,就可以一直给另一方发送数据,只要连接没有断开,就可以一直发送数据。而 Http 请求是连接、发送数据、断开。每次发送数...原创 2018-11-10 15:11:49 · 563 阅读 · 0 评论 -
Python 高级编程 -- 迭代器和生成器
Python 高级编程之迭代器和生成器1. 迭代器 Iterator 和可迭代的 Iterable2. 迭代器2.1 第一个例子2.2 自定义迭代器3. 生成器3.1 一个例子3.2 读取只有单行的大文件1. 迭代器 Iterator 和可迭代的 Iterable迭代器是访问集合内元素的一种方式, 一般用来遍历数据。迭代器和以下标的访问方式不一样, 迭代器是不能返回的, 迭代器提供了一种惰性...原创 2018-11-09 22:59:47 · 400 阅读 · 0 评论 -
Python 高级编程之元类和装饰器
1. property 动态属性使用 property 注解,可以将某个方法装饰属性描述符,将取函数变成取属性的方式。那么,什么时候会用到呢? 以下面的代码为例,假设项目早期的版本代码中有 age 这个属性,随着项目的迭代,age 这个属性后期被移除了,添加了新的计算逻辑,那么之前的代码中通过 self.age 这种方式都需要被修改。此时,通过 property 注解,就可以将新写的 age ...原创 2018-11-06 20:32:26 · 479 阅读 · 0 评论 -
Python 对象引用、可变性和垃圾回收
1. == 和 is 的区别== 判断符是调用类的 eq 方法,is 是调用 id() 判断 id 是否相等。a = [1,2,3,4]b = [1,2,3,4]class People: passperson = People()# 也可以用 isinstanceif type(person) is People: print ("yes")# True...原创 2018-11-06 00:24:51 · 200 阅读 · 0 评论 -
Python 序列类型
序列类型主要可分为以下几个类别:容器序列:list、tuple、deque扁平序列:str、bytes、bytearray、array.array可变序列:list, deque,bytearray、array不可变序列:str、tuple、bytes1. bisect 模块bisect 模块常常用来维护一个已排序的升序序列。import bisectfrom coll...原创 2018-11-05 21:15:35 · 2960 阅读 · 0 评论 -
Python 中 class method 与 static method 的区别与联系
Python 中 class method 与 static method 的区别很多编程语言中是没有 class method 而言的,比如 Java,但是 Python 语言中却提供了两种看似相同又不同的关键字。这里我们不扣字眼,比如说 class method 与 static method 的区别有方法前面的 @ 符号不同,我们仅给出最为核心的不同点。相同点class met...原创 2018-11-04 20:03:32 · 2894 阅读 · 0 评论 -
Python 面向对象基础
类1.1 实例属性和类属性实例属性通过 self 关键字定义,类属性没有 self 修饰,直接写在类中。**类属性一定要通过类名调用,不要使用对象名调用。**例子如下:class A: aa = 1 def __init__(self, x, y): self.x = x self.y = ya = A(2,3)A.aa = 11...原创 2018-11-04 22:12:51 · 274 阅读 · 0 评论