![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python
学习不止于前
这个作者很懒,什么都没留下…
展开
-
python-1、环境安装及基础知识
环境:Anaconda3 + pychanm单行注释:# 多行注释:''' '''程序=数据结构+算法变量:推荐使用数字、大小写、下划线...· 数字不可以开头。· 一般下划线开头的内容具有特殊含义,故不推荐下划线· 区分大小写· 类命名:大驼峰命名规则· 普通变量或者函数:小驼峰保留关键字:class、def、break、for查看关键字:import keywordprint(keywo...原创 2018-05-23 11:21:17 · 107 阅读 · 0 评论 -
python-类的属性案例
类的成员操作 set:设置属性 get:获取属性 delete:删除属性 class Student(): def study(self): print("我的名字是".format(self._name)) def fset(self, name): self._name = name.upper() def fget(...原创 2018-07-20 15:30:59 · 119 阅读 · 0 评论 -
python-三种方法
实例方法:通过对象调用 静态方法:通过类直接方法,不需要实例化 类方法:不需要实例化 class Student(): # 实例方法 def study(self): print("study....") # 类方法 @classmethod def play(self): pass # 静态方法 ...原创 2018-07-20 15:57:05 · 147 阅读 · 0 评论 -
python-抽象和自定义类
抽象方法class Person(): def say(self): passclass Student(Person): def say(self): print("i am student")抽象类: 包含抽象方法的类 抽象类可以包含非抽象方法 抽象类可以有方法和属性 抽象类不能进行实例化 必须继承才能使用,且继...原创 2018-07-20 16:22:28 · 136 阅读 · 0 评论 -
python-模块和包
模块的作用 对程序进行拆分、便于维护 封装程序,可重复利用 避免命名冲突 导入方式:import 模块名 或 借助于importlib 包使用importlib.import_module("模块名称") 模块文件名遵循python命名规范 import 模块名 as 别名 from 模块名 import 方法名,类名 # 若单独执行模块则输出hello,若作为包则不...原创 2018-07-30 14:49:39 · 103 阅读 · 0 评论 -
python-异常处理
'''try :except exception:finally:'''try: num = int(input("please input an number")) print(100/num)except: print("except")finally: print("exit")错误信息:'''try :except excep...原创 2018-07-30 15:28:45 · 113 阅读 · 0 评论 -
python-常用包
calendar:日历 time:时间 datetime:日期 timeit: os shutil zip math string:不需要导入'''canleandar :获取一年的日历w = 每个日期间的间隔字符数l = 每周所占行数c = 每个月之间的间隔字符串'''import calendarcal = calendar.calendar(2017)pr...原创 2018-07-30 16:09:32 · 521 阅读 · 0 评论 -
python-函数式编程
高阶编程 lambda 表达式 高阶函数 排序:按照给定的算法进行排序 系统高阶函数-map:将列表中的 每个元素按照一定的规则进行操作 reduce:把可迭代的对象归并成一个结果 filter:过滤函数 # lambda表达式l = lambda x: 100 * xprint(l(100))# 多个参数l1 = lambda x, y, z:...原创 2018-07-30 17:14:49 · 120 阅读 · 0 评论 -
python-高级编程
zip:将可迭代的两个列表进行tuple# zipl1 = [1,2,3,4,5]l2 = [6,7,8,9,10]z = zip(l1,l2)print(z)for x,y in z: print(x,y)enumerate:对于可迭代的对象中的每一个元素,配上一个索引# enumeratel1 = [1,2,3,4,5]# start 从哪个开始索引em...原创 2018-07-31 11:26:03 · 122 阅读 · 0 评论 -
python-Log
# loggingimport loggingLOG_FORMAT = "%(asctime)s-----------------%(levelname)s--------------------%(message)s"logging.basicConfig(filename="log.log",level=logging.DEBUG,format=LOG_FORMAT)loggin...原创 2018-08-01 11:12:07 · 391 阅读 · 0 评论 -
python-多线程
多线程 vs 多进程 进程:地址空间、内存、数据栈 每个进程由自己的完全独立的运行环境,多进程共享数据是一个典型问题 线程:有共享的东西,一个进程独立运行的片段 轻量化进程 一个进程由多个线程组成 共享互斥典型问题 全局解析器(GIL) Python代码执行是由python虚拟机进行控制 在主循环中只有一个控制线程在运行 Python包 t...原创 2018-08-06 10:48:04 · 111 阅读 · 0 评论 -
python-面向对象三大特性
封装:对象成员进行访问控制 public(公开):公共的成员 protected(受保护的):受保护的,只有父类和子类中可以访问 定义在变量前面加一个下划线 如:_name="zhangsan" private(私有的):只有当前类和对象中使用 定义在变量前面加2个下划线 如:__name = "zhangsan" ,若要访问可以使用 _className__name访问【不建议使用】...原创 2018-07-19 17:21:40 · 109 阅读 · 0 评论 -
python-OOP(面向对象)
class Student: name = "lisi" age = 18 def hello(self): self.name="zhangsan" self.age=10 a = Student()print(a.name) # lisiprint(A.name) # lisia.hello()print(a....原创 2018-07-19 15:46:29 · 471 阅读 · 0 评论 -
python-2 运算符
逻辑运算符and 与or 或not 非python 中没有异或运算规则:and--乘法 or--加法 True--1 False--0成员运算符号用来检测某个变量是否是另一个变量的成员in 、not in优先级表格** 指数- + -按位反转* / % // 乘、除、取模和取整除+ - 加法减法>> << 右移 左移运算符&...原创 2018-05-23 15:08:18 · 329 阅读 · 0 评论 -
python-3 三大结构
if 条件表达式: 语句1 语句2 .......note:条件表达式后的冒号不能少 根据缩进进行判断代码块num=8if num>8: print("大于8")print("小于8")num=8if num>8: print("大于8")else: print("小于8")...原创 2018-05-23 16:16:19 · 996 阅读 · 0 评论 -
python-数据类型和变量
数据类型:整数、浮点数、字符串、多行字符串、布尔值、空值整数:1,2 0xFa浮点数:1.223,1.2e-10字符串:使用单引号或者双引号 "hello world",'hello world'布尔值:True False ;运算方式:and、 or、not空值:None...原创 2018-06-15 14:14:32 · 94 阅读 · 0 评论 -
python-numpy
import numpy as np平方 :np.exp(v)log:np.log()绝对值:np.abs(v_np.maximum(v,o)...原创 2018-07-04 10:24:10 · 182 阅读 · 0 评论 -
python-广播
(m,n)+(1,n),会使(1,n)复制成(m,n)再进行相加例如:import numpy as npA=np.array([[56.0,0.0,4.4,68.0],[1.2,104.0,52.0,8.0],[1.8,135.0,99.0,0.9]])print(A)cal=A.sum(axis=0)print(cal)percentag=100*A/calprint(percen...原创 2018-07-04 10:39:03 · 148 阅读 · 0 评论 -
python-总结numpy
使用np.random.randn(5)创建的为一个秩为1的数据结构,往往我们由于这个问题导致python代码产生bug,如图所示:a=np.random.randn(5)[-1.48338769 -0.9962106 0.40807657 -0.60869681 1.80409923]当我们使用a.shape时可以查看它的数据结构print(a.shape)(5,)使用np.do...原创 2018-07-04 10:54:59 · 132 阅读 · 0 评论 -
python-变量定义域及相关函数
1) 变量按作用域分类:全局变量(global),局部变量(local)2)LEGB原则: L(local):局部作用域 E(Enclosing function local)外部嵌套函数作用域 G(Global module)函数定义所在模块作用域 B (Build)python 内置作用域3)局部变量->全局变量def fun...原创 2018-07-18 10:40:23 · 3211 阅读 · 0 评论 -
python-数据结构补充-list
''' 汉诺塔问题 规则:1. 每次移动一个盘子 2. 任何时候小盘子都在大盘子下面 方法:假设有n个盘子,当n=1时,A->C; 当n=2时,A->B,A->C,B->C 当n=3时,将底层大盘子上的所有盘子 当做一个盘子,执行n=2时的操作,执...原创 2018-07-18 14:47:14 · 111 阅读 · 0 评论 -
python-数据结构-元组
def funa(n): n[1] = 100 print(id(n)) print(n) return Nonedef funb(n): print(id(n)) return Nonea=[1,2,3,4]b=1funa(a)funb(b)值传递与地址传递:对于简单变量类型进行值传递# appenda = [ i for ...原创 2018-07-18 15:46:23 · 163 阅读 · 0 评论 -
python-数据结构-dict
# 元组变量交换a=1b=2print(a)print(b)a,b=b,aprint(b)print(a)# 集合 set:元素无序,唯一s=set()s={1,2,3,4}print(s)# 集合的内涵a={1,1,1,2,3,3,3,4}print(a)b={i for i in a if i % 2 == 0}print(b)# adds.add(5)...原创 2018-07-18 16:52:41 · 115 阅读 · 0 评论 -
python-多线程-共享变量问题
import threadingsum = 0loopSum = 1000000lock = threading.Lock()def Add(): global sum, loopSum for i in range(1,loopSum): lock.acquire() sum += 1 lock.release()...原创 2018-08-07 10:12:43 · 1081 阅读 · 0 评论