![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Python基本语法
文章平均质量分 55
青果HA
☀
展开
-
Tkinter实现
# !/usr/bin/python# -*-coding:utf-8 -*-import tkinter as tkimport tkinter.messageboxfrom pathlib import Pathfrom tkinter import filedialogimport threadingfrom tkinter.filedialog import askdirectoryfile_path = ''res_path = ''def comm(): glo.原创 2021-11-28 10:15:57 · 355 阅读 · 0 评论 -
python列表转字典
1、直接转:要求列表中的每个元素是 长度为2的元组 或 长度为2的列表 l1 = [(1, 'a'), (2, 'b'), (3, 'c'), (4, 'd')] print(dict(l1)) # {1: 'a', 2: 'b', 3: 'c', 4: 'd'} l2= [['key1', 'value1'], ['key2', 'value2'], ['key3', 'value3']] print(dict(l2)) .原创 2021-08-22 19:12:59 · 12588 阅读 · 2 评论 -
赋值、浅拷贝(对象拷贝,但不会拷贝子对象)、深拷贝(对象拷贝)
1、赋值相当于对象多了一个引用,引用计数器的值为2,A和B指向同一个对象A=[1,2,3,['qq']]B=AB.append(4)print(A)#[1, 2, 3, ['qq'], 4]2、浅拷贝拷贝父对象,不会拷贝子对象A=[1,2,3,['qq']]C= A.copy()A.append(4)A[3].append('ww')print(C)#[1, 2, 3, ['qq', 'ww']]3、深拷贝既拷贝对象、也拷贝子对象,相当于是另开辟了一个空原创 2020-12-26 19:10:04 · 305 阅读 · 0 评论 -
python @staticmethod 修饰符
python staticmethod 返回函数的静态方法。该方法不强制要求传递参数(连self都可以不用写) 可以实现实例化使用 《实例化名.方法名》 也可以不实例化调用该方法直接《类型.方法名》。#!/usr/bin/python# -*- coding: UTF-8 -*- class C(object): @staticmethod def f(): print('runoob'); C.f(); # 静态方法无需实例化cob原创 2020-08-23 10:47:33 · 473 阅读 · 0 评论 -
python @abstractmethod 修饰符
背景:Python 没有抽象类,Python抽象类通过abc类库实现,用@abstractmethod修饰抽象方法,如果子类未实现,则报TypeError异常原创 2020-08-23 10:41:20 · 494 阅读 · 0 评论 -
Python classmethod 修饰符
classmethod修饰符classmethod修饰符对应的函数不需要实例化,不需要 self 参数,但第一个参数需要是表示自身类的 cls 参数,可以来调用类的属性,类的方法,实例化对象等。入参:无 返回结果:类方法实现的内容#!/usr/bin/python# -*- coding: UTF-8 -*- class A(object): bar = 1 def func1(self): print ('foo') @class..原创 2020-08-23 10:11:25 · 247 阅读 · 0 评论 -
python map函数
格式:map(func,seq)作用:调用函数func来迭代遍历每个seq中的元素,并将所有迭代返回的结果作为列表返回。实质上就是一个通过func对seq进行映射的函数。返回:python返回值是列表;python3返回值是可迭代对象...原创 2020-06-27 10:11:14 · 259 阅读 · 0 评论 -
python 位置参数、默认参数和关键字参数混合存在
python 位置参数、默认参数和关键字参数混合存在,实参的赋值原创 2020-06-26 12:24:19 · 480 阅读 · 0 评论 -
python __new__和 __init__
区别1. __new__方法是在实例对象创建时执行的,而构造方法__init__是实例创建后执行的。2.解析:(1)__new__方法__new__方法是Python新式类(py2既有新式类也有经典类、py3统一为新式类;(py2中的新式类需要显示继承object))引入的 __new__用于控制生成一个新实例的过程。是类级别的静态方法,在创建实例对象时执行,如果自定义类中没有重写该方法,则Python自动调用父类的方法,当所有父类也没有重写定义该方法时,则直接调用object类的__..转载 2020-06-26 11:34:06 · 1078 阅读 · 0 评论 -
python 类的特殊属性和方法
python类有很多内建的属性和方法,可以通过dir查看一 、python 类的特殊属性1. __name__if __name__ == '__main__':这句估应该很熟悉1:__name__是一个变量。加双下划线是因为这是一个标识模块的系统变量。普通变量不要使用此方式命名变量。2:Python有很多模块,这些模块是可以独立运行的。3:__name__ 假如当前模块是主模块,那么此模块名字就是__main__,通过if判断这样就可以执行 “__mian__:” 后面的...原创 2020-06-26 10:20:46 · 769 阅读 · 0 评论 -
Python类变量、实例(成员)变量和局部变量
1.类变量下面介绍类变量的两种定义方式、两种读取方式、在类里面的调用方式定义1.类里定义的,与构造函数、普通函数是一个级别缩进的。(下面例子里的num)2.在类外定义的,直接用类名.变量名新增类变量。(下面例子里的myvar)读取1.直接用类名的属性 获取:类名.类变量(下面例子里的Member.num和Member.myvar)2.先实例化类,实例化对象的属性 获...原创 2020-04-05 13:41:14 · 10511 阅读 · 6 评论 -
【肉眼看不见的错误】SyntaxError: invalid character in identifier
报错信息:语法错误但你看代码没有任何错误,这时候需要找“照妖镜”来帮忙了,打开Notepadd++,复制代码,编码选择:使用UTF-8编码,可以看到隐形无用的字符。删除无用字符,重新运行就好了。...原创 2020-04-05 10:59:32 · 538 阅读 · 0 评论 -
正则表达式匹配时间,匹配中文
1.匹配时间【计划周期】3.25-3.27</span></p><p><span style="color: rgb(74, 74, 74);">【实际周期】3.25-</span></p><p><span style="color: rgb(74, 74, 74);">【进度跟踪】</spa...原创 2020-03-28 12:34:03 · 1286 阅读 · 0 评论 -
Python爬取数据保存在嵌套字典里,并实现A字典和B字典合并
1.Python爬取数据保存在嵌套字典里网页爬取得数据保存为嵌套字典,并将该字典定义为全局变量# -*- coding: utf-8 -*-from __future__ import unicode_literalsfrom django.test import TestCaseimport requestsimport jsonimport reimport panda...原创 2020-03-26 21:51:17 · 1673 阅读 · 0 评论 -
python计算一段时间内的工作日(除周末、除中国节假日、加调休)和所有日期
计算两个日期之间有几个工作日(除周末)、有几天(不除周末)都可以用python里pandas的函数实现。1. 计算有几个工作日:(1)bdate_range(start_day, end_day,freq='b')start_day: 开始日期,日期格式可以兼容多种格式:2020-01-1或20200101或者1/1/2020!!!可以说是很完美了。end_day:结束日期fr......原创 2020-03-19 21:53:27 · 18836 阅读 · 0 评论 -
XPath的数据类型和节点类型
一、XPath数据类型XPath可分为四种数据类型: 1、节点集(node-set):节点集是通过路径匹配返回的符合条件的一组节点的集合。其它类型的数据不能转换为节点集。 2、布尔值(boolean):由函数或布尔表达式返回的条件匹配值,与一般语言中的布尔值相同,有true和 false两个值。布尔值可以和数值类型、字符串类型相互转换。 3、字符串(stri...转载 2020-02-17 12:10:03 · 6637 阅读 · 0 评论 -
python中对象、字符串和数值互相转换的几种方法
一 、字符串转化成数字方法1:(仅限python 2) 1)string.atof(s) 字符串转化成浮点型>>import string >>string.atof('1.11')>>1.11>>string.atof('1')>>1.0 2)string.atoi(s[, base]) 字符串转换...原创 2020-02-17 11:29:29 · 7768 阅读 · 0 评论 -
python矩阵中的‘逗号跟冒号’
矩阵中的数组表示真是让人头大,下面记录一下具体用法:array是numpy库里的。不管怎样,一、首先导入 numpy:1)import numpy2)from numpy import *3)import numpy as np 二、定义array数组X=array([[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,16],[17,原创 2017-10-13 14:27:34 · 21075 阅读 · 1 评论 -
生成随机数返回排序后的结果
import randomdef get_data(start,end,n): l =[] for i in range(n): e = random.randint(start, end) l.append(e) return ldef quicksort(left,right,arr): if left>right...原创 2018-10-15 11:08:59 · 358 阅读 · 0 评论 -
素数;最大公约数;最小公倍数
import math def isPrime(n): if n <= 1: return False for i in range(2, int(math.sqrt(n)) + 1): if n % i == 0: return False return Trueprint(isPrime(9))# -*- codin...原创 2018-09-20 21:12:52 · 362 阅读 · 0 评论 -
阿里云平台的人脸识别接口测试
需要导入的包:必备模块:import urllib请求模块:import urllib.request 解析模块:import urllib.parse 可以拆分URL,也可以拼接URL数据交换格式:import json需要输入的参数是:URL地址method方式:POSTAPI_KEY:自己申请的号body:字典,有type;POST的参数:image_1...原创 2018-09-30 16:33:38 · 4958 阅读 · 0 评论 -
判断ip地址是否合法
def isip(ipAdd): ip = ipAdd.split('.') if len(ip)!=4: return "{} ip check failed".format(ipAdd) for i in range(4): try: ip[i]=int(ip[i]) if ip[i]&l...原创 2018-10-09 22:49:34 · 1195 阅读 · 0 评论 -
Python爬虫【urllib模块】
通用爬虫爬虫的一般流程1 初始化一批URL,将这些URL放入队列2 从队列中取出这些URL,通过DNS解析IP,对IP对应的网站下载HTML页面,保存到本地服务器中,爬取完的URL放到已爬取队列。3 分析这些网页得内容,找出网页里面得其他关心的URL连接,继续执行第2步,知道爬取条件结束搜素引擎如何获取一个新网站的URL1 新网站主动提交搜索引擎2 通过其它网站页面中设置的外链...原创 2018-11-14 16:52:37 · 59466 阅读 · 2 评论 -
Python多线程编程
1 术语Thread:表示一个线程的执行的对象 Lock:锁原语对象(跟 thread 模块里的锁对象相同)在获取输入输出资源,锁定。结束之后在释放锁。生成Lock对象后的方法:得到锁acquire()、释放锁release()RLock:可重入锁对象。使单线程可以再次获得已经获得了的锁(递归锁定)。 Condition:条件变量对象能让一个线程停下来,等待其它线程满足了某个“条件”。如状态...原创 2018-11-17 20:15:06 · 365 阅读 · 0 评论 -
python链表连接
如果定义反了,输出结果不对原创 2018-12-20 16:18:58 · 738 阅读 · 0 评论 -
51job爬取职位搜索下面的2000条职位信息
打了这么久的酱油,终于自己独立完成了网站信息的爬取,记录一下。要求:https://search.51job.com/list/020000%252C00,000000,0000,00,9,99,%2B,2,1.html?lang=c&stype=1&postchannel=0000&workyear=99&cotype=99&degreefrom=...原创 2019-02-22 17:13:14 · 21493 阅读 · 1 评论 -
Matlab、Pycharm、Spyder、Visual Studio快捷键批量注释和取消注释、缩进/取消缩进
MatlabMatlab 批量注释代码:Ctrl+r 或者 Ctrl+R Matlab 批量取消注释:Ctrl+t 或者 Ctrl+TPycharmPycharm 批量注释代码:Ctrl + / Pycharm批量取消注释:Ctrl + / Pycharm 批量缩进:Tab Pycharm批量取消缩进:Shift + TabSpyderSpyder 批量注释代码:...原创 2019-04-14 12:43:08 · 2576 阅读 · 0 评论 -
python实现最大子序列和——连续or不连续
# -*- coding: utf-8 -*-"""Created on Sun Oct 14 21:10:28 2018@author: DELL功能:最大子序列问题""" def test_func(num_list): ''' 求数组中最大子序列的和,子序列可以不连续 (也可以写成if判断语句只累加整数即可) ''' n=len(n...原创 2018-10-14 21:53:44 · 1696 阅读 · 0 评论 -
查找组成一个偶数最接近的两个素数
题目:任意一个偶数(大于2)都可以由2个素数组成,组成偶数的2个素数有很多种情况,本题目要求输出组成指定偶数的两个素数差值最小的素数对。比如:输入:20,输出:7,13思路:1 先写一个判断是否为素数的函数,这个就很简单了,范围是:2到int(sqrt(x))+12 因为要求差值最小的两位素数,所以,我们从偶数的一半为中心,依次加2减2需要注意的是:偶数分为两种:key//2 ...原创 2018-10-13 22:53:23 · 578 阅读 · 0 评论 -
python 2和python 3的区别
1 字符串格式:python 2:有两种字符串类型,Unicode字符串和非Unicode字符串python 3: 只有一种类型,Unicode字符串。2 unicode() 函数:python2:有两个全局函数可以把对象强制转换成字符串:unicode()把对象转换成unicode字符串,还有str()把对象转换为非Unicode字符串。Python3:只有一种字符串类型,u...原创 2018-10-13 22:14:54 · 193 阅读 · 0 评论 -
修饰器
Python 中的函数和 Java、C++不太一样,Python 中的函数可以像普通变量一样当做参数传递给另外一个函数,例如: def foo(): print("foo")def bar(func): func()bar(foo)装饰器本质上是一个 Python 函数或类,它可以让其他函数或类在不需要做任何代码修改的前提下增加额外功能,装饰器的返回值也是一个函数...原创 2018-08-11 20:10:49 · 306 阅读 · 0 评论 -
Python 中 Iterator(迭代器)和Iterable(可迭代)的区别:
Python中 list,truple,str,dict这些都可以被迭代,但他们并不是迭代器。因为和迭代器相比有一个很大的不同,list/truple/map/dict这些数据的大小是确定的,也就是说有多少是可知的。但迭代器不是,迭代器不知道要执行多少次,所以可以理解为不知道有多少个元素,每调用一次next(),就会往下走一步,是惰性的。判断是不是可迭代,用iterablefrom collect...转载 2017-09-29 17:59:48 · 1372 阅读 · 0 评论 -
python之sklearn学习笔记
前言:本文是学习笔记。sklearn介绍scikit-learn是数据挖掘与分析的简单而有效的工具。 依赖于NumPy, SciPy和matplotlib。它主要包含以下几部分内容:从功能来分: classificationRegressionClusteringDimensionality reductionModel selectionPreprocessing从API模块来分转载 2018-01-21 18:40:50 · 919 阅读 · 0 评论 -
python中集合的操作
一、setpython set类是在python的sets模块中,大家现在使用的python2.7.x中,不需要导入sets模块可以直接创建集合。>>>set('boy')set(['y', 'b', 'o'])1、集合添加、删除python 集合的添加有两种常用方法,分别是add和update。1)集合add方法:是把要传入的元素做为一个整个添加到集合原创 2017-10-15 20:25:19 · 524 阅读 · 0 评论 -
python中的字符串操作
1、什么是BIF? BIF就是Built-in Functions,内置函数。为了方便程序员快速编写脚本程序,Python提供了非常丰富的内置函数,我们只需要直接调用即可,例如print()的功能是“打印到屏幕”,input()的作用是接收用户输入。注:Python3用input()取代了Python2的raw_input()。2、转移字符“\”在Python中的用法实例(1)转移字符“\”一个原创 2017-07-31 11:17:55 · 876 阅读 · 0 评论 -
Python----入门学习
1、关于 “ end=‘ ’ ” print默认是打印一行,结尾加换行。end=' '意思是末尾不换行,加空格。 两个Python例题及运行结果展示:2、while 循环条件 (1)如果用 while‘’:或者 while false: 或者 while 0 :或者 none、{}、[]、() 被认为循环条件是假,不原创 2017-07-25 13:45:18 · 779 阅读 · 0 评论 -
Python中sort 、sorted、argsort的区别
1、sort函数是list列表中的函数>>a = [1,2,1,4,3,5]>>a.sort()>>a 输出[1, 1, 2, 3, 4, 5]2、sorted可以对list或者iterator进行排序>>a = [1,2,1,4,3,5]>>sorted(a) 输出[1, 1, 2, 3, 4, 5]>>a转载 2017-09-29 19:02:31 · 559 阅读 · 0 评论 -
continue和 break和pass
1、continue 结束本轮循环,进入下一轮循环。(但是需要重新判断循环条件)2、break 退出当前循环 3、continue表示跳过后面的程序,重新循环,而pass表示站位,后面的代码(else之前)还是会执行, 例题1设计一个验证用户密码程序,用户只有三次机会输入错误,不过如果用户输入的内容中包含"*"则不计算在内。分析:(1)输入机会有3次:说明要有循环 ...原创 2017-07-26 09:43:44 · 1015 阅读 · 0 评论 -
python函数&对象&模块之函数
1、创建函数 (1)不带参函数:”def 函数名():” (2)带参函数:”def 函数名(形参1,形参2…):” eg1: def fun1(): print(“hello!world”) eg2: def fun2(num1,num2):原创 2017-07-28 15:11:02 · 620 阅读 · 0 评论 -
Python中的元组
Python的元组与列表类似,不同之处在于元组的元素不能修改,元组使用小括号,列表使用方括号,元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。所有的多对象的、逗号分隔的、没有明确用符号定义的这些集合默认的类型都是元组。如x, y, z = 1, 2, 3 时,h=x, y, z是元组类型。1、创建元组 (1)一般元组: tup1= (‘physics’, ‘che原创 2017-07-28 14:24:25 · 617 阅读 · 0 评论