自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(50)
  • 收藏
  • 关注

转载 线程的join方法

线程的join方法方法一:from threading import Threadimport timedef task(): print('子线程 start') time.sleep(2) print('子线程 end') t = Thread(target=task)t.start()t,join()# 等待子线程运行结束print('主线程'...

2019-09-17 20:31:00 116

转载 线程其他相关用法和守护线程

线程其他相关用法和守护线程线程其他相关用法from threading import Thread,currentThread,enumerate,activeCount# import threadingimport time# threading.current_thread()# threading.current_thread()def task(): p...

2019-09-17 20:31:00 109

转载 # 子线程和子进程的创建速度

子线程和子进程的创建速度from threading import Threadfrom mutlprocessing import Processimport timedef task(name): print(f'{name} is running') time.sleep(2) print(f'{name} is end') if __name__...

2019-09-17 20:30:00 139

转载 子线程资源共享

子线程资源共享from threading import Threadimport time ,osx = 100def task(): global x x = 50 print(os.getpid())#20456 if __name__ == '__main__': t = Thread(target = task) t.start()...

2019-09-17 20:30:00 140

转载 线程内容

线程内容一、初识别线程.在传统操作系统中,每一个进程中有一个地址空间,而且默认就有一个控制线程,cpu真正的执行单位是线程。在工厂中,每一个车间都有房子,而且每个车间默认就有一条流水线操作系统 ---> 工厂进程 --->车间线程 ---> 流水线cpu ---> 电源线程:cpu最小的执行单位进程:资源集合、资源单位线程运行 = 运行代码进...

2019-09-17 20:29:00 100

转载 开启线程的两种方式

开启线程的两种方式方式一:from threadong import Threadimport timedef task(): print('线程 start') time.sleep(2) print('线程 end') if __name__ == '__main__': t = Thread(target = task) t.start...

2019-09-17 20:29:00 114

转载 反射

用户输入一段字符串,执行该字符串对应的方法hasattr():判断一个属性是否在对象中,返回True或者Falsegetattr():通过字符串获取属性或者方法,如果获取收到了,就会返回相应的属性和方法setattr():通过字符串来设置属性或方法delattr():通过字符串来删除属性或方法class Foo: def run(self): pri...

2019-09-16 18:29:00 66

转载 同步异步阻塞非阻塞

一、状态介绍在了解其他概念之前,我们首先要了解进程的几个状态。在程序运行的过程中,由于被操作系统的调度算法控制,程序会进入几个状态:就绪,运行和阻塞。就绪(Ready)状态:当进程已分配到除CPU以外的所有必要的资源,只要获得处理机便可立即执行,这时的进程状态称为就绪状态。执行/运行(Running)状态当进程已获得处理机,其程序正在处理机上执行,此时的进程状态称为执行状态。...

2019-09-16 18:28:00 83

转载 class底层原理分析

class 类名 会把类构造出来实际上是:元类实例化产生类 这个对象类实例化产生对象,一定是: 类名()Person 类是由type实例化产生,传一堆参数type() 调用类的__init__方法type()type(object_or_name,bases,dict)object_or_name 类的名字,是个字符串bases:是它的所有的父类,基类dict :名称空...

2019-09-16 18:27:00 172

转载 并发编程(初学)

一、手工操作-------穿孔卡片1946年第一台计算机诞生--20世纪50年代中期,计算机工作还在采用手工操作的方式。此时还没有操作系统的概念。程序员将对应程序和数的已穿孔的指代(或卡片)装入输入机,然后启动输入机把程序和数据输入计算机内存,接着通过控制台开关启动程序针对数据运行:计算完毕,打印机输出计算机结果;用户取走结果并卸下纸带(或卡片)后,才让下一个用户上机。手工操作...

2019-09-16 18:27:00 138

转载 通过元类控制类的调用过程

__call__控制类的调用过程,实际上在控制:对象的产生class Mymeta(type): def __call__(self,*args,**kwargs): #print('xxx') return 1class Person(object,metaclass=Mymeta): school = 'oldboy' def __init__(se...

2019-09-16 18:27:00 83

转载 通过元类控制类的产生

自定义元类:来控制类的产生:可以控制类名,可以控制类的集成父类,控制类的名称空间type自定义元类必须集成type,写一个类继承type 这种类都叫元类class Mymeta(type): #def __init__(self,*args,**kwargs): def __init__(self,name,bases,dic): #sef就是Person类 ...

2019-09-16 18:27:00 101

转载 什么是元类

一切皆对象:类实际上就是一个对象Person类也是一个对象,那他一定是由一个类实例化得到的,这个类就是元类type是内置的一个元类,所有的类都是由type实例化得到的产生类的类叫做元类class Person: def __init__(self,name): self.name = name def score(self): print('分数是1...

2019-09-16 18:26:00 178

转载 函数的定义

函数的定义一、函数体系接下来,我们将按照这个函数体系给大家详细的介绍函数:什么是函数?为什么要用函数?函数的分类:内置函数与自定义函数如何自定义函数语法定义有参函数,及有参函数的应用场景定义无参函数,及无参函数的应用场景定义空函数,及空函数的应用场景调用函数如何调用函数函数的返回值函数参数的应用:形参和实参,位置形参,位置实参,关键字实参,关键字形参,...

2019-08-08 21:05:00 104

转载 函数的返回值

函数的返回值一、什么是返回值?函数内部代码经过一些逻辑处理获得的结果。def func(): name = 'nick' return namename = func()print(name)nick二、为什么要有返回值?现在有一个需求,比较两个人的月薪,然后想获取月薪较大的人的年薪。如果需要在程序中拿到函数的处理结果作进一步的处理,则需要函数必须要有返回值。...

2019-08-08 21:05:00 184

转载 定义函数的三种形式

定义函数的三种形式一、无参函数定义函数时参数是函数体接受外部传值的一种没接,其实就是一个变量名在函数阶段括号内没有参数,称为无参函数。需要注意的是:定义时无参,意味着调用时也无需传入参数。如果函数体代码逻辑不需要依赖外部传入的值,必须得定义成无参函数。def func(): print('hello nick') func() # hello nick 二、有...

2019-08-08 21:04:00 343

转载 函数的调用

函数的调用一、什么是函数调用?第一次将函数其实就讲了韩式的调用,但是你不得不再次更新你对函数调用的印象。函数名(...)即调用函数,汇之星函数体代码,直到碰到return或者执行完函数体内所有代码结束。函数运行完毕所有代码,如果函数体不写return,则会返回None。def foo(): passprint(foo())None二、为何要调用函数?一个非常愚蠢的...

2019-08-08 21:04:00 119

转载 with管理文件的上下文

with管理文件的上下文之前我们使用open()方法操作文件,但是open打开文件后我们还需要手动释放文件对操作系统的占用。但是其实我们可以更方便的打开文件,即Python提供的上下文管理工具——with open()。with open('32.txt', 'rt', encoding='utf8') as f: print(f.read())sdfwith open(...

2019-08-08 21:03:00 103

转载 Python2和python3字符编码的区别

Python2和python3字符编码的区别一、字符编码应用值Python1. 执行Python程序的三个阶段Python test.py(执行test.py的第一步,一定是先将文件内容从硬盘读入到内存中 )text.py文件内容以gbk格式保存的,内容为:阶段一:启动python解释器阶段二:Python解释器此时就是一个文本编辑器,负责打开文件test.py,即冲硬盘...

2019-08-08 21:02:00 93

转载 字符编码

字符编码一、计算机基础二、文本编辑器存取文件的原理打开编辑器就打开了启动一个进程,是在内存中的,所以,用编辑器编写的内容也都是存放在内存中的,断电后数据丢失。都想要永久保存,需要点击按钮:编辑器吧内存的数据刷到了硬盘上。在我们编写一个py文件(没有执行),跟编写其他文件没有任何区别,都是在编写一堆字符而已三、Python解释器执行PY文件的原理第一阶段:python...

2019-08-08 21:02:00 67

转载 文件修改的两种方式

文件修改的两种方式文件的数据是存放于硬盘上的,因而只存在覆盖、不存在修改这么一说,我们平时看到的修改文件,都是模拟出来的效果,具体的说有两种实现方式。方式一将硬盘存放的该文件的内容全部加载到内存,在内存中是可以修改的,修改完毕后,再由内存覆盖到硬盘(word,vim,nodpad++等编辑器)。import oswith open('37r.txt') as fr, \ ...

2019-08-08 21:02:00 228

转载 文件的三种打开模式

文件的三种打开模式文件操作的基础模式有三种(默认的操作模式为r模式):r模式为readw模式为writea模式为append文件读写内容的格式有两种(默认的读写内容的模式为b模式):t模式为textb模式为bytes需要注意的是:t、b这两种模式均不能单独使用,都需要与r/w/a之一连用。一、文件打开模式之r模式r: read,只读模式,只能读不能写,文件不存...

2019-08-08 21:01:00 402

转载 基本文件的操作

基本文件的操作虽然视频、音频和图片在硬盘中也是用二进制存储的,但是上一章节讲的字符编码只和文本文件有关,因为‘utf-8’格式的编码并不使用视频,视频有其本身的编码格式,如MP4、avi、mkv等。一、什么是文件?文件是操作系统为用户或应用程序提供的一个读写硬盘的虚拟单位。文件的操作是基于文件,即文件的操作核心就是:读和写。也就是只要我们想要操作文件就是对操作系统发起请求,然后由...

2019-08-08 21:00:00 90

转载 文件的高级应用

文件的高级应用一、可读、可写r+t: 可读、可写w+t: 可写、可读a+t: 可追加、可读# wtwith open('36w.txt', 'wt', encoding='utf-8') as fw: print(fw.readable()) print(fw.writable())Flase True# w+twith open('36w.txt'...

2019-08-08 21:00:00 80

转载 python深浅拷贝

python深浅拷贝一、引言在python中,对象赋值实际上是对象的引用。当创建一个对象,然后把它赋给拎一个变量的时候,python并没有拷贝这个对象,而只是拷贝了这个对象的引用针对该列表11 = ['a','b','c',['d','e','f']] 一般有三种方法,分别为、拷贝(赋值)、浅拷贝、深拷贝注意:拷贝/浅拷贝/深拷贝都是针对可变数据类型而言的1.1 、可变or不可...

2019-08-08 20:59:00 67

转载 数据类型分类

数据类型分类一、按存值个数区分存值个数数据类型单个值数字、字符串多个值(容器)列表、元祖、字典、集合二、按可变不可变区分可变or不可变数据类型可变列表、字典、集合不可变数字、字符串、元祖三、有序无序区分有序or无序数据类型有序(可按索引取值)字符串、列表、元祖不可变字典、集合...

2019-08-08 20:58:00 135

转载 字典类型内置方法

字典类型内置方法一、字典类型内置方法(dict)用途:存多个值,但每一个值都有一个key与之对应,key对值有描述功能。多用于存的值表示的是不同的状态时,例如存的值有姓名、年龄、身高、体重、爱好。定义:{}内用逗号分隔开多个元素,每一个元素都是key:value的形式,value可以的是任意数据类型,而key通常应该是字符串类型,但是key必须为不可变类型。dic = {'a...

2019-08-05 22:12:00 105

转载 集合类型内置方法

集合类型内置方法一、集合类型内置方法(set)集合可以理解成一个集合体,学习python的学生可以是一个集合体;学习linux的学生可以是一个集合体。pythoners = ['jason','nick','tank','sean']linuxers = ['nick','egon','kevin']#即报名python的学生又报名linuxe的学生py_li_list = ...

2019-08-05 22:12:00 99

转载 列表类型内置方法

一、列表类型内置方法(list)用途:多个装备、多个爱好、多门课程、甚至多个女朋友定义:[]内可以有多个任意类型的值.逗号分隔元素# my_girl_friend = list([]'jason','tank','sean'])my_girl_friend = ['jason','tank','sean']print(my_girl_friend)['jason', '...

2019-08-05 22:11:00 131

转载 元祖类型内置方法(tuple)

元祖类型内置方法(tuple)元组是不可变的列表,即元组的值不可更改,因此元组一般只用于只存不取的需求。也因此元组可以被列表取代掉,所以元组相比较列表使用的很少。元组相比较列表的优点为:列表的值修改后,列表的结构将会发生改变,而元组只需要存储,因此列表在某种程度上而言需要占用更多的内存。但是目前工业上内存已经不是问题了,所以工业上元组一般不会使用。用途:多个装备、多个爱好、多门课程...

2019-08-05 22:11:00 224

转载 字符串类型内置方法

字符串类型内置方法一、字符串类型内置方法(str)用途:描述性质的东西、如人的名字、单个爱好、地址、国家等定义:使用单引号、双引号、三引号、多引号包裹的一串字符u'unicode' :unicode编码的字符串b'101':二进制编码的字符串r'/n':原生字符串,也就是说‘/n'这是普通的两个字符,并没有换行的意思name = 'nick' # name =str...

2019-08-03 15:27:00 188

转载 数字类型内置方法

数字类型内置方法整型和浮点型统称为数字类型一、整型内置方法(int)用途:年龄、号码、等级定义:可以使用int()方法将纯数字的字符串转为十进制的整型age = 19 #age = int(10)print(type(age)<class 'int'>x = int('11.1')print(type(x))<class 'int'>...

2019-08-03 15:26:00 64

转载 流程控制之while循环

一、语法循环就是一个重复的过程,我们人需要重复干一个活,那么计算机也需要重复做一个事情。以ATM为例子吧,ATM验证失败了,它肯定就会让我再次输入密码(虽然只有三次)。这时候就得提出我们牛B的while循环了,while循环又称为条件循环。看下面代码。。while条件 code 1 code 2 code 3while Trueprint('1'100)pri...

2019-08-01 21:09:00 141

转载 流程控制之if判断

一、语法if判断是干什么的呢?if判断其实是在模拟人做判断。就是说如果这样干什么,如果那样干什么。对于ATM系统而言,则需要判断你的账号密码的正确性。if学什么都是为了让计算机向人一样工作,我们无时无刻都在判断。路边路过一个生物,你会判断两个人是不是会表白?首先会判断这个生物是不是人类,并且这个人类是个女人,年龄大于18小于20几岁。你首先需要记录一堆数据,然后才会用你的大脑去判断...

2019-07-31 19:15:00 107

转载 基本运算符

当我们眼前飘过一只生物后,我们会立即获得这个生物的信息,种类、性别、身高、三围,当我们获取这些信息的同事,我们还会马上对这些信息做一些逻辑处理,如这个生物种类是老虎的时候,我们就会撒腿就跑;这个生物是个人,性别为女,身高 160、三围86 60 87时,我们就会不自觉地靠近他一、算数运算符算数运算符我们从小学有些甚至从幼儿园就开始学习的,加减乘除,这里我就不多BB了,如果认为有问题的...

2019-07-31 19:14:00 76

转载 格式化输出的三种方式

一、占位符程序中经常会有这样的场景:要求用户输入信息,然后打印成固定的格式,比如要求用户输出用户名和年龄,然后打印如下格式:My name is xxx ,my age is xxx很明显,用哪个逗号进行字符串凭借,只能把用户输入的名字和年龄放再末尾,无法放到指定的XXX位置,而且数字也必须进过str(数字)的转换才能与字符串进行拼接,有麻烦又繁琐还会打错,不信吗?来试试看age ...

2019-07-31 19:13:00 384

转载 Python与用户交互

一、为什么交互?让我们来回顾计算机的发明有何意义,计算机的发明是为了奴役计算机,解放劳动力。假设我们现在写了一个ATM系统取代了柜员,如果我们要在这太ATM上取款,那么这个ATM是不是会要求我们输入姓名、密码?是不是需要我们输入我们需要取款金额?这是Y不是就可以理解为一种交互。现在让我们了解一下Python是怎么实现交互的.二、如何交互?print('-'*100)input(...

2019-07-30 20:17:00 107

转载 解压缩

解压缩一、解压缩如果我们给出一个列表,我们需要一次性去除多个值,我们是不是可以用下面的方式是实现?name_list = ['nick','egon','jason']x = name_list[0]y = name_lisy[1]z = name_list[2]print(f'x:{x},y:{y},z:{z})讲真,上面的方法真的是谁用谁知道,我们可以试一试解压缩。...

2019-07-30 17:34:00 116

转载 布尔值(bool)

作用用于判断条件结果定义True、Flase通常情况下不会直接引用,需要使用逻辑运算得到结果。如何用print(type(True))print(True)<class 'bool'>Trueprint(bool(0))print(bool('nick'))print(bool(1 > 2))print(bool(1 == 1))False...

2019-07-30 17:22:00 1547

转载 字典类型

字典类型字典(dict)如果信息有个需求需要我存我的信息,通过我们之前学习的数据类型,只有类表能够存储我们的信息user_info = ['nick','male','19',['oldboy','shanghai',50]]print(user_info[1])print(user_info[0])print(user_info[3][1])malenicksha...

2019-07-30 17:21:00 96

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除