![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Python_learning
Python铫的当当
python
展开
-
Python_基础_learning(集合版) 09
Python语言是一种面向对象的解释型计算机程序设计语言。Python语言特点:简单、免费、开源、高层语言、可移植性、解释性、面向对象、可扩展性、丰富的库、规范的代码。单行注释---- 快捷键:Ctrl+/标识符命名规则:只能由数字,字母,_下划线组成不能以数字开头不能是关键字区分大小写变量类型:数值型:(1)int(整型) 整数(2)float(浮点...原创 2019-03-19 19:12:19 · 141 阅读 · 0 评论 -
Python_基础_learning 01
Python介绍Python语⾔:⾯向对象的解释型计算机程序设计语⾔。 创始⼈:吉多·范罗苏姆(Guido van Rossum)python优缺点:优点:简单、易学、免费、开源、⾼层语⾔、可移植性、解释性、⾯向对象、可扩展性、丰富的 库、规范的代码缺点:运⾏速度慢、国内市场较⼩、中⽂资料匮乏、构架选择太多算数运算符优先级乘⽅ > 乘、除、整除、取余 > 加、减 相同等级的...原创 2019-03-17 18:22:22 · 172 阅读 · 0 评论 -
Python_基础_learning 02
函数概念:将具有独⽴功能的代码块组织成为⼀个整体,使其具有特殊功能的代码集作⽤:加强代码的复⽤性,提⾼程序编写的效率基本语法# 函数定义:形参 def 函数名(参数): 函数体 return 结果 # 根据你的需求来决定是否return# 函数调⽤:实参 变量名 = 函数名(参数)作⽤域局部变量:函数内部定义的变量从函数定...原创 2019-03-18 10:50:15 · 119 阅读 · 0 评论 -
Python_基础_learning 03
面向对象基本语法定义类 class 类名(⽗类名): 类变量 = 值 构造⽅法 def __init__(self,形参1,形参2,…): self.__属性名1 = 形参1 self.__属性名2 = 形参2 def...原创 2019-03-18 11:38:15 · 136 阅读 · 0 评论 -
Python_基础_learning 04
可变类型基本语法列表list:有序可变的存储模型 list = []list.insert(idx,data):在列表的指定位置插⼊数据,如果索引位置超过列表数据总量,数据将插⼊ 到列表末尾 list.extend(model):在列表的末尾添加参数对象中的所有数据 list.remove(data):从列表中删除指定的数据,如果数据不存在将报错 list.pop(idx...原创 2019-03-18 14:35:26 · 125 阅读 · 0 评论 -
Python_基础_learning 05
字符串字符串常用函数:islower():判断字符串是否是全⼩写字⺟组成 isupper():判断字符串是否是全⼤写字⺟组成 isdigit():判断字符串是否是由纯数字组成 isalpha():判断字符串是否是由纯字⺟组成 isalnum():判断字符串是否是由纯数字和字⺟组成 istilte():判断字符串是否是满⾜单词⾸字⺟⼤写格式 startswith(str)...原创 2019-03-18 15:13:03 · 162 阅读 · 0 评论 -
《蟒蛇之禅》(The Zen of Python)
The Zen of Python, by Tim Peters《蟒蛇之禅》(The Zen of Python),蒂姆·彼得斯(Tim Peters)著Beautiful is better than ugly. 美丽总比丑陋好。Explicit is better than implicit. 显式比隐式好。Simple is better than complex. 简单总比复...翻译 2019-03-21 19:19:49 · 1132 阅读 · 0 评论 -
Python_基础_learning 06
引⽤相关概念引⽤:是⼀种变量指向数据存储空间的现象内存地址:是数据在物理内存中的存储位置引⽤地址:是对象在内存中的描述性地址,该地址与内存地址有区别引⽤特征:相同的数据在内存空间中仅占⽤⼀个存储空间,不同的变量使⽤相同的数据则指向相 同的存储空间。地址存储特殊性- 使⽤固定内存地址存储数据如下: - * -5到256的整数 - * True和False ...原创 2019-03-18 15:37:39 · 122 阅读 · 0 评论 -
Python_基础_learning 07
⽂件操作基本语法格式⼀(⼿⼯关闭格式): 1.打开⽂件: file=open("⽂件名","读写模式") 2.操作⽂件: * 3.关闭⽂件: file.close() 格式⼆(免关闭格式): 1.打开⽂件: with open("⽂件名","读写模式") as file: 2.操作⽂件: *原创 2019-03-18 15:53:19 · 144 阅读 · 0 评论 -
Python_基础_learning 08
异常处理基本语法常⽤格式 try: print(a) except: print("变量a未定义") 完整格式try: ____可能引发异常现象的代码 except: ____出现异常现象的处理代码else: ____未出现异常现象的处理代码...原创 2019-03-18 16:11:41 · 150 阅读 · 0 评论 -
Python 进阶:全面解读高级特性之切片!
众所周知,我们可以通过索引值(或称下标)来查找序列类型(如字符串、列表、元组…)中的单个元素,那么,如果要获取一个索引区间的元素该怎么办呢?切片(slice)就是一种截取索引片段的技术,借助切片技术,我们可以十分灵活地处理序列类型的对象。通常来说,切片的作用就是截取序列对象,然而,对于非序列对象,我们是否有办法做到切片操作呢?在使用切片的过程中,有什么要点值得重视,又有什么底层原理值得关注呢?...转载 2019-03-25 16:43:08 · 254 阅读 · 0 评论 -
Python_3 与 2 版本_区别
Python_3的变化主要在以下几个方面:print 函数print语句没有了,取而代之的是print()函数。统一的字符编码标准Python 2 有 ASCII str() 类型,unicode() 是单独的,不是 byte 类型。现在, 在 Python 3,我们最终有了 Unicode (utf-8) 字符串,以及一个字节类:byte 和 bytearrays。除法运...原创 2019-03-25 20:23:12 · 97 阅读 · 0 评论 -
Python_手动实现--reverse(反转)!!!
菜鸟康康say:def fanzhuan(li): li1 = [] for i in range(len(li)): if i < len(li) / 2: li1.append(li.pop(i)) li.insert(i, li.pop(len(li) - 1 - i)) li.i...原创 2019-03-25 20:53:22 · 959 阅读 · 0 评论 -
python_test_06
加班薪水问题:联邦法律规定如果员工每周的工作超过了40小时,那么多余的工作时间要支付1.5倍的薪水。例如,如果一个人每小时的薪水是$12,他一周工作了60小时,那么这个人的工资应该为:(4012)+(1.512*(60-40))=$840请编写一个程序,输入一个人一周的工作时间和每小时的薪水,输出一周的总薪水. class Person(): def __init__(sel...原创 2019-03-29 15:43:41 · 320 阅读 · 0 评论 -
python_test_07
字典a={“x”:1,“z”:3},b={“y”:2,“z”:4},请设计一个函My_Func(),当My_Func(a,b)时输出c={“x”:1,“y”:2,“z”:3},当My_Func(b,a)时输出c={“x”:1,“y”:2,“z”:4}import operatora = {"x": 1, "z": 3}b = {"y": 2, "z": 4}def my_...原创 2019-03-29 15:47:53 · 82 阅读 · 0 评论 -
python_test_08
有一个字典列表如下:portfolio = [{‘name’: ‘IBM’, ‘shares’: 100, ‘price’: 91.1},{‘name’: ‘AAPL’, ‘shares’: 50, ‘price’: 543.22},{‘name’: ‘FB’, ‘shares’: 200, ‘price’: 21.09},{‘name’: ‘HPQ’, ‘shares’: 35, ‘p...原创 2019-03-29 16:09:03 · 151 阅读 · 0 评论 -
python_learning_Game(弹球游戏)
探讨下弹球的游戏from tkinter import *import randomimport timeclass Ball(): def __init__(self, canvas, paddle, color): self.canvas = canvas self.paddle = paddle self.id = canv...原创 2019-03-30 11:53:20 · 286 阅读 · 0 评论 -
python_learning_(递归函数)
递归函数是在当前函数体内出现了对自身函数的调用。函数调用的最大层级是1000次,递归操作很容易突破该层级,使用时要注意。# 求1到指定数字的和(100)# sum(100)def sum(num): # 设置结束标志 if num == 1: return 1 return sum(num-1)+num #规律点/递归点print(sum(1...原创 2019-03-30 12:31:04 · 120 阅读 · 0 评论 -
python_test_11
如何实现“1,2,3”变成[‘1’,‘2’,‘3’]? 如何实现[‘1’,‘2’,‘3’]变成[1,2,3]a = "1,2,3"b = a.split(",")print(b)print(",".join(b))c = list()for i in ['1', '2', '3']: c.append(int(i))print(c)1、2、3、4、5能组成多少个...原创 2019-04-04 15:53:43 · 74 阅读 · 0 评论 -
数据结构_算法--插入排序
插入排序插入排序(英语:Insertion Sort)是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,在从后向前扫描过程中,需要反复把已排序元素逐步向后挪位,为最新元素提供插入空间。def insert_sort(alist): """插入排序""" n = len(alist) ...原创 2019-03-31 10:17:05 · 146 阅读 · 0 评论 -
数据结构_算法--希尔排序
希尔排序(Shell Sort)是插入排序的一种。也称缩小增量排序,是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。该方法因DL.Shell于1959年提出而得名。 希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。希尔排序过程:希尔排序的基本思想是:将数组列...原创 2019-03-31 14:55:40 · 89 阅读 · 0 评论 -
python_test_12
比较:a=[1,2,3]和b=[(1),(2),(3)] 以及c=[(1,),(2,),(3,)]的区别a=[1,2,3] 是列表b=[(1),(2),(3)] 是列表c=[(1,),(2,),(3,)] 是元组列表两个列表colors = [“balck”,“white”] sizes=[“S”,“M”,“L”],请严格按照顺序输出如下结果...原创 2019-04-05 16:53:51 · 89 阅读 · 0 评论 -
python_对 dict(字典)_的键(key)进行排序
# 对字典dict1 按键(key)进行排序(默认由小到大)# 下列代码中:key=lambda y:y[0] 简单理解为dict1.items中有两个元素:# y[0]表示按照第一元素进行排序**# sorted(iterable,key,reverse),sorted一共有iterable,key,reverse这三个参数;# 其中iterable表示可以迭代的对象,例如可以是dict...原创 2019-03-27 16:29:16 · 2879 阅读 · 0 评论 -
python_对 dict(字典)_的值(values)进行排序
# 对字典dict1按值(value)进行排序(默认由小到大)# 下列代码中:key=lambda y:y[1] 简单理解为dict1.items中有两个元素:# y[1]表示按照第二个元素进行排序# sorted(iterable,key,reverse),sorted一共有iterable,key,reverse这三个参数;# 其中iterable表示可以迭代的对象,例如可以是dict...原创 2019-03-27 16:38:18 · 1881 阅读 · 0 评论 -
数据结构_算法--快速排序
快速排序快速排序(英语:Quicksort),又称划分交换排序(partition-exchange sort),通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。步骤为:从数列中挑出一个元素,称为"基准"(pivot),重新排序数列,所有元...转载 2019-04-01 09:18:04 · 87 阅读 · 0 评论 -
数据结构---算法_01
先来看一道题:如果 a+b+c=1000,且 a2+b2=c^2(a,b,c 为自然数),如何求出所有a、b、c可能的组合?(1)第一次尝试import timestart_time = time.time()# 注意是三重循环for a in range(0, 1001): for b in range(0, 1001): for c in range(0...原创 2019-03-27 18:30:03 · 122 阅读 · 0 评论 -
python_test_13
有两个6面骰子,同时抛掷100000次,求两个骰子点数只和所占百分比。# 方法1:list1 = [1, 2, 3, 4, 5, 6]list2 = [1, 2, 3, 4, 5, 6]dict1 = {}n = 100000for _ in range(100000): x = random.randint(0, 5) y = random.randint(0, 5) ...原创 2019-04-06 09:05:26 · 190 阅读 · 0 评论 -
数据结构_算法--归并排序
归并排序是采用分治法的一个非常典型的应用。归并排序的思想就是先递归分解数组,再合并数组。将数组分解最小之后,然后合并两个有序数组,基本思路是比较两个数组的最前面的数,谁小就先取谁,取了后相应的指针就往后移一位。然后再比较,直至一个数组为空,最后把另一个数组的剩余部分复制过来即可。def merge_sort(alist): """归并排序""" n = len(alist)...原创 2019-04-01 13:47:59 · 83 阅读 · 0 评论 -
常见排序算法效率比较
常见排序算法效率比较原创 2019-04-01 13:50:14 · 164 阅读 · 0 评论 -
python_learning_10(网络编程)-udp
网络通信概述网络就是一种辅助双方或者多方能够连接在一起的工具使用网络的目的就是为了联通多方然后进行通信用的,即把数据从一方传递给另外一方前面的学习编写的程序都是单机的,即不能和其他电脑上的程序进行通信为了让在不同的电脑上运行的软件,之间能够互相传递数据,就需要借助网络的功能小总结使用网络能够把多方链接在一起,然后可以进行数据传递所谓的网络编程就是,让在不同的电脑上的软件能够进行...原创 2019-04-06 18:17:43 · 97 阅读 · 0 评论 -
python_learning_12(网络编程)-多任务(进程)
进程以及状态1.进程程序:例如xxx.py这是程序,是一个静态的进程:一个程序运行起来后,代码+用到的资源 称之为进程,它是操作系统分配资源的基本单元。不仅可以通过线程完成多任务,进程也是可以的2.进程的状态工作中,任务数往往大于cpu的核数,即一定有一些任务正在执行,而另外一些任务在等待cpu进行执行,因此导致了有了不同的状态就绪态:运行的条件都已经慢去,正在等在cpu执行执行态...原创 2019-04-10 18:31:01 · 128 阅读 · 0 评论 -
数据结构_算法--搜索与查找
搜索搜索是在一个项目集合中找到一个特定项目的算法过程。搜索通常的答案是真的或假的,因为该项目是否存在。搜索的几种常见方法:顺序查找、二分法查找、二叉树查找、哈希查找二分法查找二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。首先,假设表中元素是按升序排列,将表中...原创 2019-04-01 17:15:03 · 544 阅读 · 0 评论 -
数据结构_树与树算法
树的概念树(英语:tree)是一种抽象数据类型(ADT)或是实作这种抽象数据类型的数据结构,用来模拟具有树状结构性质的数据集合。它是由n(n>=1)个有限节点组成一个具有层次关系的集合。把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。它具有以下的特点:每个节点有零个或多个子节点;没有父节点的节点称为根节点;每一个非根节点有且只有一个父节点;除了根节...原创 2019-04-01 17:19:23 · 136 阅读 · 0 评论 -
数据结构---算法-02
链表为什么需要链表顺序表的构建需要预先知道数据大小来申请连续的存储空间,而在进行扩充时又需要进行数据的搬迁,所以使用起来并不是很灵活。链表结构可以充分利用计算机内存空间,实现灵活的内存动态管理。链表的定义链表(Linked list)是一种常见的基础数据结构,是一种线性表,但是不像顺序表一样连续存储数据,而是在每一个节点(数据存储单元)里存放下一个节点的位置信息(即地址)。(1)单向链...原创 2019-03-28 11:21:06 · 138 阅读 · 0 评论 -
python_test_14
给定两个list ,A = [1,2,3,4,5,6,7,1,2,3]和B=[4,5,6,7,8,9,10,9,8,11],请用python找出A,B 中相同的元素放入列表D中,找出A,B中不同的元素放入列表C中,确保C、D两个列表中的元素不重复(用代码实现)方法1:listA = [1,2,3,4,5,6,7,1,2,3]listB= [4,5,6,7,8,9,10,9,8,11]...原创 2019-04-07 08:40:16 · 689 阅读 · 0 评论 -
数据结构---算法-03
1.栈结构实现栈可以用顺序表实现,也可以用链表实现。栈的操作Stack() 创建一个新的空栈push(item) 添加一个新的元素item到栈顶pop() 弹出栈顶元素peek() 返回栈顶元素is_empty() 判断栈是否为空size() 返回栈的元素个数2. 队列队列(queue)是只允许在一端进行插入操作,而在另一端进行删除操作的线性表。队列是一种先进先出的(Firs...原创 2019-03-28 14:50:00 · 210 阅读 · 0 评论 -
python_learning_11(网络编程)-tcp
TCP简介TCP介绍TCP协议,传输控制协议(英语:Transmission Control Protocol,缩写为 TCP)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793定义。TCP通信需要经过创建连接、数据传送、终止连接三个步骤。TCP通信模型中,在通信开始之前,一定要先建立相关的链接,才能发送数据,类似于生活中,“打电话”"TCP特点面...原创 2019-04-07 18:29:27 · 93 阅读 · 0 评论 -
python_test_09
打印出100-999之间所有的"水仙花数"。(“水仙花数"是指一个三位以上的整数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数”,因为153=1的三次方+5的三次方+3的三次方。)i = 101while 100 < i < 999: o = i // 100 # 整除,取整 p = i % 100 // 10 # 取余后取整 q ...原创 2019-04-02 08:57:53 · 112 阅读 · 0 评论 -
python_test_19
28.练习3:现有列表 name_list = [“tom”,“zhangsan”,“lisi”],根据列表内容生成字符串:“tomzhangsanlisi”name_list = ["tom", "zhangsan", "lisi"]b = ""for i in name_list: b += iprint(b)29.练习4:使用字符串切片练习:现在有字符串:msg = “...原创 2019-04-11 11:43:07 · 94 阅读 · 0 评论 -
数据结构_算法--冒泡排序
冒泡排序(英语:Bubble Sort)是一种简单的排序算法。它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。冒泡排序算法的运作如下:比较相邻的元素。如果第一个比第二个大(升序),就交换他们两个。对每一对相邻元素作同...原创 2019-03-28 16:34:10 · 115 阅读 · 0 评论