python
MakChiKin
Art, tea, and a cozy fine day :)
展开
-
python 单例模式
class MusicPlayer(object): """单例模式""" instance = None flag_init = False def __new__(cls, *args, **kwargs): """单例模式实现""" if cls.instance is None: cls.instance = super().__new__(cls) print("New") .原创 2022-05-29 16:20:19 · 355 阅读 · 0 评论 -
python 面向对象 私有熟悉和私有方法
class Woman: def __init__(self, name): self.name = name self.__age = 24 # 私有熟悉 def __secret(self): ''' 私有方法 :return: ''' print("%s is %d years old." % (self.name, self.__age))if __name__.原创 2022-05-28 16:30:47 · 362 阅读 · 0 评论 -
python 面向对象例子(士兵开枪)
1个对象调用加载或调用另外1个对象例子。gun.pyclass Gun: def __init__(self, model): self.model = model self.bullet_count = 0 def add_bullet(self, number): """添加子弹""" self.bullet_count = number def shot(self): self.bul原创 2022-05-28 16:14:33 · 738 阅读 · 0 评论 -
python 面向对象案例(房子家具)
furniture.pyclass Furniture: def __init__(self, name, area): self.name = name self.area = area def __str__(self): return "%s占用%d平方米" % (self.name, self.area)house.pyimport furnitureclass House: def __init__(.原创 2022-05-27 00:01:57 · 550 阅读 · 0 评论 -
Anaconda/Miniconda for Mac安装使用
Anaconda(最新)下载地址:Anaconda | Anaconda Distributionhttps://www.anaconda.com/products/distribution#DownloadsAnaconda(历史)下载地址:Index of /https://repo.anaconda.com/archive/Miniconda(所有)下载地址:Miniconda — Conda documentation1. 打开安装包,安装默认点击下一步即可,windows用户需要.原创 2022-05-26 17:46:46 · 1705 阅读 · 0 评论 -
python 实例方法/类方法/静态方法的对比
class Demo(object): '''普通方法/类方法/静态方法的对比''' num = 0 # 类属性 def defaultFun(self): '''实例方法:必须实例化类之后才能被调用,它是要面向实例化对象的一个实例方法。''' print (u'普通方法') print (self) print(self.num) @classmethod def classFun(cls):.原创 2021-01-16 13:10:12 · 161 阅读 · 1 评论 -
pyhon requests 下载进度详细实例
本实例只需要替换‘自己服务器的文件路径’ 便可使用#!/usr/bin/python# -*- coding: UTF-8 -*-import requestsfrom contextlib import closingclass ProgressBar(object): #初始化实例 def __init__(self, title,count=0.0,run...转载 2018-09-21 15:37:49 · 418 阅读 · 0 评论 -
python requests模块详解
https://www.cnblogs.com/ranxf/p/7808537.html转载 2018-09-27 10:50:21 · 157 阅读 · 0 评论 -
阿里云OSS python 上传下载详细文档
https://www.alibabacloud.com/help/zh/doc-detail/32030.htm转载 2018-11-07 16:55:38 · 1585 阅读 · 0 评论 -
UnicodeDecodeError: 'ascii' codec can't decode byte 0xb0 in position 1: ordinal not in range(128)
# 错误: line 1: ascii# Traceback (most recent call last):# File "<maya console>", line 12, in <module># File "C:\Program Files\Autodesk\Maya2016\Python\lib\site-packages\oss2\resumab...转载 2018-12-14 16:09:29 · 1255 阅读 · 3 评论 -
pyQt5/PySide2 基础入门-创建实例窗口(详细解释)
python 3.7 / Pyside2 (如果使用pyQt5,将Pyside2 直接替换PyQt5即可)首先我们在Qt Designer中画好界面并自动生成design.py,注意生成后还要部分收到修改,然后创建main.pydesign.py主要负责写软件界面的文件。main.py 主要负责写业务逻辑的文件。design.py# -*- coding: utf-8 -...原创 2019-02-22 10:26:06 · 13901 阅读 · 10 评论 -
python for threading 创建多线程实例
原理#!/usr/bin/env python3# -*- coding: utf-8 -*-import threading as tdimport timedef threadJob(): '''task01''' threadJob2()def threadJob2(): '''task02''' print('create thread...转载 2019-02-22 11:16:10 · 1483 阅读 · 0 评论 -
python for threading 线程锁
import threadingdef job1(): global A,lock # 锁定 lock.acquire() for i in range(10): A+=1 print('job1',A) # 解锁 lock.release()def job2(): global A,lock ...转载 2019-02-22 11:36:14 · 147 阅读 · 0 评论 -
pyqt QThread 多线程实例(详细解释)
python 2.7 / Pyside(如果使用pyQt4,将Pyside直接替换PyQt4即可)首先我们在Qt Designer中画好界面并自动生成design.py,注意生成后还要部分收到修改,然后创建main.pydesign.py主要负责写软件界面的文件。main.py 主要负责写业务逻辑的文件。design.py# -*- coding: utf-8 -*...翻译 2019-02-22 15:57:17 · 5578 阅读 · 0 评论 -
python 闭包详细解释
为什么要用闭包?# 问题:y=kx+b,y=ax^2+bx+c# 以y=kx+b为例,请计算一条线上的过个点 即 给x值 计算出y值# 第1种k=1b=2x=0y=k*x+b# 缺点:如果需要多次计算,那么就得写多次y=k*x+b的式子print('-'*50)# 第2种def line_2(k,b,x): y = k * x + b print(y...原创 2019-05-18 14:45:48 · 526 阅读 · 0 评论 -
python PyQt5/Pyside2 按钮右击菜单实例
import sysfrom PySide2.QtGui import *from PySide2.QtCore import *from PySide2.QtWidgets import *class MainForm(QMainWindow): def __init__(self, parent=None): super(MainForm, self).__...转载 2019-03-26 15:51:06 · 2336 阅读 · 0 评论 -
python全系列官方中文文档
https://docs.python.org/zh-cn/3.7/index.htmlPS:用的时候,修改url上对应的版本,点击左侧导航栏会跳转到对应的原版(英文版)文档原创 2019-03-27 13:18:05 · 30953 阅读 · 2 评论 -
python 类调用类(属性可以是另外一个类创建的对象)
class Gun: def __init__(self,model): # 枪的类型 self.model = model # 子弹数量 self.bullet_number = None # 查询子弹数量 def queryBulletsNum(self): return self.bu...原创 2019-04-02 09:10:23 · 15994 阅读 · 5 评论 -
python 多继承
# 为了在py2.x 和py3.x中都能运行,如果没有父类,建议统一继承自objectclass Father(object): def cook(self): print('Father cook')class Mother(object): def do_housework(self): print('Mother do housewo...转载 2019-04-02 15:51:32 · 117 阅读 · 0 评论 -
python 面向对象三大特性
1.封装 根据 职责 将属性和方法封装到一个抽象的类中 定义类的准则2.继承 实现代码的重用,相同的代码不需要重复的编写 设计类的技巧 子类针对自己特有的需求,编写特定的代码 3.多态不同的子类调用相同的父类,产生不同的结果 多态可以增加代码的灵活度 多态有两个条件 1继承 2重写父类方法 多态是调用方法的技巧,不会影响类的内部设计...转载 2019-04-02 16:08:45 · 225 阅读 · 0 评论 -
python 多态
'''面向对象三大特性1.封装 根据 职责 将属性和方法封装到一个抽象的类中 定义类的准则2.继承 实现代码的重用,相同的代码不需要重复的编写 设计类的技巧 子类针对自己特有的需求,编写特定的代码3.多态不同的子类调用相同的父类,产生不同的结果 多态可以增加代码的灵活度 多态有两个条件 1继承 2重写父类方法 多态是调用方法的技巧,不...转载 2019-04-02 16:32:20 · 92 阅读 · 0 评论 -
python 类属性
类属性就是给类对象定义的属性通常用来记录与这个类(模板)相关的特征类属性不会用于记录具体对象的特征不要用实例来访问类属性,应该通过类来访问类的属性,避免混淆无论是访问还是赋值都推荐使用这种形式--->类名字.类属性# 类对象用于记录类(模板)相关的特性,不会用来具体对象的特性class Tool(object): # 使用赋值语句,定义类属性,记录创建统计对象...转载 2019-04-03 08:48:01 · 129 阅读 · 0 评论 -
python 类方法
类方法就是针对类对象定义的方法在类方法内部可以直接访问类属性或者电泳其他的类方法类方法需要用修饰器@classmethod 来标识,告诉解释器这是一个类方法类方法的第一个参数应该是cls 由哪一个类调用的方法,方法内的cls就是哪一个类的引用 这个参数和实例方法的第一个参数是self类似 cls是class的缩写 不应当使用这个名字,但习惯使用cls 方便阅读...转载 2019-04-03 09:56:42 · 251 阅读 · 0 评论 -
python 静态方法
在开发时,如果需要在勒种封装一个方法,这个方法:1.既不需要访问实例属性 或者电泳实例方法2.也不需要房屋类属性或者调用类方法这个时候,可以把这个方法封装成静态方法语法@staticmethoddef 静态方法名(): pass实例class Dog(object): # 不访问实例属性/方法也不访问类属性/方法 @staticmethod...原创 2019-04-03 10:08:18 · 1123 阅读 · 0 评论 -
python PEP8 代码编写规范
https://python.freelycode.com/contribution/detail/47转载 2019-04-03 11:36:48 · 226 阅读 · 0 评论 -
MySQL 插入记录
# 插入记录# 通用语法-- 插入单条记录INSERT INTO t_dept (deptno,dname,loc)VALUES(50,"技术部","GUANGZHOU");-- 插入多条记录INSERT INTO t_dept (deptno,dname,loc)VALUES(60,"后期部","HANGZHOU"),(70,"保安部","HANGZHOU");# 向技术部...转载 2019-05-25 16:14:56 · 5144 阅读 · 1 评论 -
Python 开源网上商城项目
django-oscar https://github.com/django-oscar/django-oscar#screenshotsdjango-shop https://github.com/awesto/django-shopcakeshop https://github.com/myoula/cakeshopsatchmo h...转载 2019-04-22 08:44:31 · 8149 阅读 · 1 评论 -
python 生成器原理(重点)
'''使用了 yield 的函数被称为生成器(generator)。跟普通函数不同的是,生成器是一个返回迭代器的函数,只能用于迭代操作,更简单点理解生成器就是一个迭代器。在调用生成器运行的过程中,每次遇到 yield 时函数会暂停并保存当前所有的运行信息,返回 yield 的值, 并在下一次执行 next() 方法时从当前位置继续运行。调用一个生成器函数,返回的是一个迭代器对象。...原创 2021-01-16 12:06:32 · 139 阅读 · 1 评论 -
MySQL 字符函数
# 字符函数# 大小写、长度、字符连接,字符索引SELECT LOWER(ename),UPPER(ename) ,LENGTH(ename),CONCAT("$",sal),INSTR(ename,"A")FROM t_emp;# 插入SELECT INSERT("ABCDE",1,0,123456) # 123456ABCDESELECT INSERT("ABCDE",1,2...转载 2019-05-23 11:56:12 · 124 阅读 · 0 评论 -
MySQL 时间函数
# 时间函数SELECT Now(),CURDATE(),CURTIME();# DATE_FORMAT用于格式化日期,返回用户想要的日期格式SELECT ename,DATE_FORMAT(hiredate,"%Y") FROM t_emp;# %Y 年份 %m 月份 %d日期 %w星期(数字) %W星期(名称) %j本年第几天 %U本年第几周 %H小时(24) %h 小时(1...转载 2019-05-23 11:55:53 · 1263 阅读 · 0 评论 -
MySQL 基础语句2-DML
DDL语言:逻辑库、数据表、视图、索引DML语言: 添加、修改、删除、查询DCL语言:用户、权限、事务搜索数据# 查询所有数据SELECT * FROM t_emp;# 查询指定字段数据SELECT empno,ename FROM t_emp;# 将表达式重命名字段SELECT empno,sal*12 as "income of year" FROM t...转载 2019-05-25 16:17:13 · 138 阅读 · 0 评论 -
MySQL 数据库连接池技术
import mysql.connector.poolingconfig={ "host":"localhost", "port":3306, "user":"root", "password":"abc123456", "database":"demo"}# 连接数据库con = mysql.connector.connect(**config)...转载 2019-05-22 12:35:14 · 554 阅读 · 0 评论 -
python 设置控制台命令颜色
from colorama import Back,Fore,Styleprint(Fore.LIGHTBLUE_EX,"HelloWorld")print(Back.LIGHTGREEN_EX,"HelloWorld")print(Style.RESET_ALL,"HelloWorld")转载 2019-05-29 08:06:20 · 1612 阅读 · 0 评论 -
python redis 入门教程
import redis# 链接数据库pool = redis.ConnectionPool( host="localhost", port=6379, password="", db=0, max_connections=20)# 创建链接池con = redis.Redis( connection_pool=pool)con....转载 2019-05-09 12:13:34 · 196 阅读 · 0 评论 -
python mini服务器框架路由原理
URL_FUNC_DICT = dict()def route(url): def set_func(func): # 建立映射关系,即{'/index.py':index()} # url是'/index.py' # func是index函数引用 URL_FUNC_DICT[url] =func def...转载 2019-05-21 15:15:58 · 295 阅读 · 0 评论 -
linux配置python 虚拟环境 for Django
1.安装虚拟环境sudo pip install virtualenvsudo pip install virtualenvwrapper2.编辑home目录下面的bashrc文件,添加下面两句# 查找source的路径sudo find / -name virtualenvwrapper.shsudo vi ~/.bashrcexport WORKON_HOME=...转载 2019-05-25 20:56:31 · 540 阅读 · 0 评论 -
Django 创建项目
1.创建项目(注意:创建应用必须先进入虚拟环境),在终端中输入# django-admin startproject 项目名django-admin startproject django_012.分析项目一个项目由很多个应用组成的,每一个应用完成一个特定的功能。Django开发中,一个功能模块用一个应用来实现3.创建应用的命令如下# 进入项目文件夹cd ...原创 2019-07-03 18:55:07 · 145 阅读 · 0 评论 -
Django的基本使用
Django中内嵌了ORM框架,ORM框架可以将类和数据表进行对应起来,只需要通过类和对象就可以对数据表进行操作ORM的作用就是根据设计的类生产数据库的表,并且数据库的表进行操作。1.模型_模型类设计和表生成1.在应用文件夹models.py中创建图书类from django.db import models# Create your models here.# ...原创 2019-11-14 15:24:33 · 207 阅读 · 0 评论 -
python 匿名函数/函数/闭包/对象在做实参时,有什么区别?
1.匿名函数能够完成基本的简单功能,传递是这个函数的引用,只有功能2.普通函数能够完成比较普通的功能,传递是这个函数的引用,只有功能3.闭包能够完成比较复杂的功能,传递是这个闭包中的函数和数据,因此传递是功能+数据4.对象能够完成最为复杂的功能,传递是很多数据和很对功能,因此传递是功能+数据...转载 2019-05-18 14:53:20 · 222 阅读 · 0 评论 -
python 互斥锁与GIL的区别
互斥锁是在多线程的情况下,确保当前线程执行完成后,再执行下一个任务,当前任务没有结束,下个任务会阻塞。GIL是保证同一时间只有1个线程在执行,但是该线程让出GIL的时,有可能并没完成该线程的任务,该线程的任务分多少次执行完成这个会安装GIL的默认策略。...原创 2019-05-23 14:40:50 · 768 阅读 · 0 评论