
Python
~~~~~~~~~~~~~~
这个作者很懒,什么都没留下…
展开
-
python模块中的_all__属性的作用
c.pymain.py运行main.py打印结果如下:原创 2022-12-11 21:07:37 · 640 阅读 · 1 评论 -
python中的抽象基类及相关用途
一、什么是抽象基类 (abc模块)?抽象基类就是定义各种方法而不做具体实现的类,任何继承自抽象基类的类必须实现这些方法,否则无法实例化。抽象基类不能被实例化(不能创建对象),通常是作为基类供子类继承,子类中重写虚函数,实现具体的接口。二、用途1、检查某个类是否有某种方法from collections.abc import Sized....print(isinstance(d,Sized)) #d为实例化的类对象,返回结果为true或false2、抽象基类实现...原创 2021-01-10 19:10:18 · 388 阅读 · 0 评论 -
使用python通过zabbix api获取监控项历史数据示例
1、python获取zabbix apiinfo.version信息:```import requestsimport jsondata = {"jsonrpc":"2.0","method":"apiinfo.version","id":1,"auth":None,"params":{}}header = {"Content-Type":"application/json-rpc"}url = 'https://zabbix.cn/api_jsonrpc.php'response =原创 2020-12-04 15:53:02 · 1346 阅读 · 0 评论 -
Python数据类型之元组
一、什么是元组?方括号括起来的是列表,圆括号括起来的就是元组。元组是不可变序列。列表:[1,2,3]元组:(1,2,3)二、元组与列表相同的操作 1、使用方括号加下标访问元素(下标从0开始) 示例: a = (1,2,3) print(a...原创 2020-03-08 14:38:25 · 432 阅读 · 0 评论 -
Python学习之多线程-传参
定义2个函数 ,实现多线程调用传参定义计算次数: import threadingdef demo1(counts): global num for i in range(counts): num += 1def demo2(counts): global num for j in range(counts): ...原创 2020-02-24 13:34:38 · 423 阅读 · 0 评论 -
Python学习之多线程-互斥锁
当多个线程同时修改某一共享数据的时候,有时需要进行一定的同步控制 。以下示例为2个线程同时进行数据运算操作,确保每个线程执行完返回完成的数据: import threadingnum = 100def demo1(): global num for i in range(1000000): mutex.acquire() ...原创 2020-02-24 13:19:19 · 215 阅读 · 0 评论 -
Python学习之多线程创建
多线程主要用于并发执行任务,python中使用threading模块,为避免程序执行过快,子线程内睡1秒以显示效果,代码如下: import threadingimport timedef demo1(): for i in range(5): print("--demo1--%d" %i) time.sleep(1)def dem...原创 2020-02-20 20:19:19 · 196 阅读 · 0 评论 -
Python中yield用法学习示例
本文以一个爬虫示例,来记录python学习过程中yield的用法。目的:爬取代理网站的IP地址、端口及地区信息,定义一个方法,该方法为一个生成器,每次调用返回列表中的不同的值(直到遍历整个列表,即每次调用返回一个不同的IP地址及端口信息)。 import requestsfrom lxml import etree url = 'https://www.xicidaili.co...原创 2019-12-17 16:23:18 · 235 阅读 · 0 评论 -
Python爬虫之Chrome无头浏览器操作
测试代码如下: from selenium.webdriver.chrome.options import Optionsfrom selenium import webdriverchrome_options = Options()chrome_options.add_argument("--headless")browser = webdriver.Chrome(o...原创 2019-12-16 20:51:13 · 686 阅读 · 0 评论 -
Python学习之Django初识
Django项目创建方法: django-admin startproject [项目名称] 例:django-admin startproject first_project运行django项目(默认端口号8000): python manage.py runserver 指定端口运行:python manage.py runserver 9000 ...原创 2019-12-15 15:31:53 · 169 阅读 · 0 评论 -
Scrapy框架学习练手之爬取腾讯招聘技术类岗位
页面地址:https://careers.tencent.com/search.html?pcid=40001实现目标: 将爬取到的岗位名称、工作职责、工作要求、发布日期以字典格式输出。 Scrapy目录框架:思路: 浏览器抓包分析网页请求地址规律(爬虫最重要),找到页面地址规律后,根据请求返回的数据进行提取即可。 ...原创 2019-12-09 17:36:04 · 412 阅读 · 0 评论 -
Python学习之匿名函数(lambda)及map()函数、sort()、sorted()方法
匿名函数1、Lambda函数表达式专门用来创建一些简单的函数,它是函数创建的另外一种方式。语法: lambda 参数列表【a,b,c….】:返回值示例如下: l = [1,2,3,4,5,6,7,8,9,10]print((lambda a,b : a + b)(10,20)) #写法一 #写法二:fn1 = lambda a,b:a*bprint(fn1(5,10...原创 2019-09-27 00:32:28 · 454 阅读 · 0 评论 -
Python函数学习之高阶函数
什么是高阶函数?接收一个或多个函数作为参数 将函数作为返回值返回满足以上任意一点即为高阶函数。示例如下: l = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] new_list = []def fn(func, lst): for n in lst: if func(n): new_li...原创 2019-09-26 23:10:57 · 139 阅读 · 0 评论 -
Python函数学习之函数的传递方式
函数的传递方式位置参数位置参数就是将对应位置的实参赋值给对应位置的形参。默认值:定义形参的时候,可以给形参指定默认值,如果用户传递了实参,默认值不会发挥任何作用,如果用户没有传递,则采用默认值。 def fn(a,b,c=20): print('a = ',a) print('b = ', b) print('c = ', c) ...原创 2019-09-26 22:08:06 · 477 阅读 · 0 评论