def

程序员的聚会

时间秒杀一切 提交于 2020-10-17 19:55:45
下车后,第一个来迎接我的,是祢豆车站前的小花园,大片的彩菊在晨风中摇曳生姿,像是爵士酒吧里微醺的优雅舞者。 祢豆是我出生的城市,大学毕业后,每年只有过年才会回家,这次也不例外。 在车站对面的街口有一条横幅,上书“欢迎回家”四个红底白字。横幅下,是一家米粉铺,店外的露天桌椅上,坐满了吃饭的年轻人,各色的行李箱就立在身旁,想必他们也是从远方归乡的务工者。米粉铺的老板我不认识,只见他一只手煮粉调码,另一只手托着手机刷短视频,动作娴熟且精确。他是个很年轻的小伙子,外表看起来与店外食客别无二致。 走出车站时手机震了几下,是大苏打来了电话。 “我来接你了,你在哪呢?” “刚到站,我现在在车站对面的街口,这里有家米粉店。” “好,我马上到。” 大苏是我高中时最好的朋友,现在更成为了同行,我俩都是程序员。高中毕业后,大家都分散到全国,乃至全世界去求学,毕业后也鲜有人留在老家。只有大苏是例外,他没有像其他人一样奔向北上广深纽约东京,而是在完成学业后回到了老家。 几分钟后,一辆崭新的白色雅阁停在我面前,透过降下的车窗,我看到大苏坐在驾驶室嘻嘻地笑着。“兄弟!快上来,这里不能久停的!”他说。我迅速拉开车门坐入副驾,把公务包丢在后座上,嘴里说着好久不见。 车子缓缓地开出了这个街区,向着我家进发。大苏显得很兴奋,他表示我们兄弟两人这么久不见,今晚上要好好地喝一顿,说着递给我一支烟,自己也点上了一支。他说

「网易官方」极客战记(codecombat)攻略-森林-乡村漫游者-village-rover

风格不统一 提交于 2020-10-17 00:05:57
(点击图片进入关卡) 在村庄里巡逻是个重复工作,使用函数会让其更加简单! 简介 在村庄中巡逻是很无聊的重复工作。 使用函数可以让重复工作轻松许多。你可以将很多行代码放到一行里! # 定义一个函数 def findAndAttackEnemy(): enemy = hero.findNearest(hero.findEnemies()) if enemy: hero.attack(enemy) # 之前所有的代码现在都可以用一行搞定了 findAndAttackEnemy() 默认代码 # 定义一个函数 def findAndAttackEnemy(): enemy = hero.findNearestEnemy() if enemy: hero.attack(enemy) # 这段代码不是函数的一部分。 while True: # 现在你可以使用findAndAttackEnemy在村子里巡逻 hero.moveXY(35, 34) findAndAttackEnemy() # 现在移动到右侧入口。 # 使用findAndAttackEnemy 概览 函数是代码的重要组成部分。 你一直都在使用函数,例如如下代码: hero.attack(enemy) ... 这是在调用 ("calling" 或者说 "invoking") 一个函数,名为 attack 。 调用 attack

Python面向对象运算符重载

白昼怎懂夜的黑 提交于 2020-10-16 06:50:08
运算符重载的概念如下: 运算符重载让类拦截常规的Python运算; 类可重载所有Python表达式运算符; 类也可重载打印、函数调用、属性点号运算等内置运算; 重载是类实例的行为想内置类型; 重载是通过提供特殊名称的类方法来实现的; 常见的运算符重载方法 方法 重载 调用 __init__ 构造函数 对象建立:X = Class(args) __del__ 解析函数 X对象收回 __add__ 运算符+ 如果没有__iadd__,X+Y,X+=Y __or__ 运算符或 如果没有__ior__ __repr__,__str__ 打印、转换 print(X)、repr(X)、str(X) __call__ 函数调用 X(args, *kwargs) __getattr__ 点号运算 X.undefined __setattr__ 属性赋值语句 X.any = value __delattr__ 属性删除 del X.any __getattribute__ 属性获取 X.any __getitem__ 索引运算 X[key],X[i:j],没__iter__时的for循环和其他迭代器 __setitem__ 索引赋值语句 X[key]=value,X[i:k]=sequence __delitem__ 索引和分片删除 del X[key], del X[i:j] __len__ 长度

206反转链表

↘锁芯ラ 提交于 2020-10-15 20:57:43
# Definition for singly-linked list. class ListNode: def __init__(self, x): self.val = x self.next = None a = ListNode(1) b = ListNode(2) a.next = b # 有关链表的题,基本上思路都是很好想的,主要是代码的实现 class Solution: def reverseList(self, head: ListNode) -> ListNode: # 定义一个当前节点和前驱节点 cur,prev = head,None # 然后循环遍历链表节点。 while cur: # 当前节点的指针指向前驱节点,当前节点向后移,前驱结点向后移 cur.next,cur,prev = prev,cur.next,cur # 最后返回前驱节点。 return prev A = Solution() print(A.reverseList(a)) 来源: oschina 链接: https://my.oschina.net/u/4275752/blog/4411344

几行python代码实现钉钉自动打卡,网友:终于告别缺勤了

北战南征 提交于 2020-10-15 01:32:11
前言 众所周知因为疫情的原因大家都没有办法上学和上班,“钉钉”这个app起到了重大的作用。学校为了学生成绩开启“钉钉”之路。老师也成一个“合格”的主播,感谢XXX童鞋的礼物、666扣起来 老师为了营造一个好的学习环境,直播风格也是独具一格。 钉钉到底有什么功能为大众所用呢? 为什么要写钉钉打卡? 其实我是个早起早睡的乖宝宝,所以我是用不上的,至于为什么要写这个脚本,其实是因为我在加班,工作干完了,还有10分钟可以下班,那就利用10分钟学(装)个(个)习(B)。废话就不说了, 快下班了。直接开干. 说下思路吧 用python调用adb命令通过x,y点位来操作手机,在写个定时器就好了,简单吧。10分钟够了…… 准备环境 Android 手机一部(我用的华为荣耀10) adb 工具包,下载安装包并配置环境变量 python3环境 安装adb 配置环境变量 下载adb : 网上太多了,找一个就好了,我要和时间赛跑 (> _ <……) 配置环境变量: 这个是基础,python环境配置我都不打算在这里说的,adb配置好adb --version 检查下 设置手机 数据线连接电脑 ,手机打开开发者模式,输入 adb devices,出现下图就是连接上手机了 手机进行设置,在开发者模式里找到指针位置选项,并打开,是为了获取点位信息的 写脚本 在写之前需要了解adb常用命令 a,adb shell

opencv-python 去除图片文字

廉价感情. 提交于 2020-10-14 20:16:45
opencv-python 去除图片文字 思路: 原图增强后提取增强后图片的轮廓进行闭运算,闭运算后的图像当掩码来修复原图即可去除文字 图像增强代码链接 import numpy as np import cv2 def replaceZeroes(data): min_nonzero = min(data[np.nonzero(data)]) data[data == 0] = min_nonzero return data def SSR(src_img, size): L_blur = cv2.GaussianBlur(src_img, (size, size), 0) img = replaceZeroes(src_img) L_blur = replaceZeroes(L_blur) dst_Img = cv2.log(img / 255.0) dst_Lblur = cv2.log(L_blur / 255.0) dst_IxL = cv2.multiply(dst_Img, dst_Lblur) log_R = cv2.subtract(dst_Img, dst_IxL) dst_R = cv2.normalize(log_R, None, 0, 255, cv2.NORM_MINMAX) log_uint8 = cv2.convertScaleAbs(dst_R)

一道算法题,引出collections.Counter的特殊用法

巧了我就是萌 提交于 2020-10-14 12:20:55
题目描述: 题目编号:1002. 查找常用字符 给定仅有小写字母组成的字符串数组 A,返回列表中的每个字符串中都显示的全部字符(包括重复字符)组成的列表。例如,如果一个字符在每个字符串中出现 3 次,但不是 4 次,则需要在最终答案中包含该字符 3 次。 你可以按任意顺序返回答案。 示例 1: 输入:["bella","label","roller"] 输出:["e","l","l"] 示例 2: 输入:["cool","lock","cook"] 输出:["c","o"] 提示: 1 <= A.length <= 100 1 <= A[i].length <= 100 A[i][j] 是小写字母 以上内容来源:力扣(LeetCode)链接: https://leetcode-cn.com/problems/find-common-characters 题目答案: from collections import Counter class Solution: def commonChars(self, A: List[str]) -> List[str]: res = None for a in A: c = Counter(a) if res is None: res = c else: res &= c return list(res.elements()) 题解看到一个一行流

Django 框架6- 中间件(MiddleWare)

被刻印的时光 ゝ 提交于 2020-10-14 11:55:01
一、什么是Django中间件? 1、中间件是Django处理请求/响应的钩子框架。这是一个轻,低层次的“插件”系统,用于全局改变Django和客户端的输入和输出。 2、我的理解,给Django加一个装饰器,客户端向Django发送请求时,先由中间件处理一下,再决定是否交给Views处理 3、一般处理哪些任务?请求的日志、用户登录认证、请求地址跳转、IP地址过滤,等等 二、中间件在哪里设置? project下,project包下的settings.py文件,MIDDLEWARE列表,添加或删除列表项。 三、多个中间件的运行方式? 中间件列表运行从前到后,遇到错误停止,返回数据从后到前。类似列表的先进后出。 四、中间件在一次请求中的运行时间点? 1、Django服务启动时,中件间初始化 2、客户端请求时,中件间调用 五、自已怎么做一个中间件? 1、新建一个xxxxxx.py的python文件,可以放在Project任意位置,比如我这里新建midtest.py存到project根目录。 2、在midtest.py里创建中间件函数或类 from django.utils.deprecation import MiddlewareMixin # 导入中间件类 class MyMiddleware(MiddlewareMixin): # 自定义类继承中间件类 def process

使用python 发邮件

◇◆丶佛笑我妖孽 提交于 2020-10-14 00:49:42
使用python 发送邮件 from smtplib import SMTP from email.header import Header from email.mime.text import MIMEText def main(): # 请自行修改下面的邮件发送者和接收者 sender = 'test@qq.com' receivers = ['test1@qq.com'] message = MIMEText('This is a message send by python code.', 'plain', 'utf-8') message['From'] = Header('jj', 'utf-8') message['To'] = Header('kk', 'utf-8') message['Subject'] = Header('示例代码实验邮件-test', 'utf-8') smtper = SMTP('smtp.qq.com') # 请自行修改下面的登录口令 smtper.login(sender, 'passwd') smtper.sendmail(sender, receivers, message.as_string()) print('finish sending email!') if __name__ == '__main__': main()

使用基于python的flask框架在服务器端部署机器学习模型pmml格式文件

笑着哭i 提交于 2020-10-11 00:27:49
安装anaconda环境 访问 https://www.anaconda.com/products/individual 拉到底部,下载并安装相应版本的anaconda 命令行输入conda -V,查看是否安装成功 开发 安装flask、pypmml 命令行输入 pip install flask pip install pypmml 新建server.py并写入 from flask import Flask, jsonify, request import json from pypmml import Model app = Flask(__name__) @app.route('/predict', methods=['POST']) def predict(): input_json = request.get_data(as_text=True) #调用服务器时输入的json字符串 dict_json = json.loads(input_json) model = Model.load('lr_model.pmml')#加载模型文件 result = model.predict(dict_json) return jsonify({'probability(0)':result['probability(0)'],'probability(1)':result[