精华内容
下载资源
问答
  • Python实现坦克大战

    万次阅读 多人点赞 2020-10-16 17:34:21
    Python实现经典坦克大战游戏。

    Python实现坦克大战

    一、前言

    前段时间,也就是国庆节。在寝室闲来无事,用pygame写了一个小游戏,就是标题写的《坦克大战》。这个游戏写了两个版本,第一个版本是按照书上的思想来写的,发现写到后面的时候代码太乱了。于是我又从头开始,用比较合理的面向对象思想重新写了一个版本。说比较合理也只是符合我自己的思想,所以难免会有一些不合理的设计,水平有限,希望各位读者能够包涵一下。

    二、开发环境

    我们先来看看我的开发环境,用的东西还是比较简单的:

    作者:Zack
    时间:2020年10月16日
    集成开发工具:pycharm 2020
    开发环境:python 3.7.9
    第三方模块:pygame
    

    其中我还用了一些第三方模块,但是在游戏主体中没有使用,所以就先不介绍了。下面我们来看看游戏实现了些什么功能。

    三、项目介绍

    3.1 项目截图

    我们主程序入口在main.py文件,在安装好pygame模块后就能直接运行。下面是运行截图:

    在这里插入图片描述

    下面是子弹击中墙壁的爆炸效果:

    在这里插入图片描述

    下面是多个敌方坦克的效果图:

    在这里插入图片描述

    我们再来看看项目的各个文件。

    3.2 项目文件

    下面是项目目录:

    在这里插入图片描述

    (1)resources

    其中resources是资源文件,音频、图片等都在resources目录。而tools中提供了两个小工具,因为只是供个人临时使用的,这里不过多解释了。

    (2)main.py

    而main.py则是项目的主入口,代码很短:

    from tank_war import TankWar
    
    if __name__ == '__main__':
        tankWar = TankWar()
        tankWar.run_game()
    
    

    我们直接创建了TankWar的实例,然后调用run_game方法运行游戏。

    (3)tank_war.py

    tank_war.py中写了我们坦克大战游戏主体的模块,里面的TankWar类定义了游戏主体的一切行为。包括初始化屏幕、初始化pygame模块、创建敌方坦克、绘制地图、检测碰撞、监听事件等。

    (4)sprites.py

    在pygame中提供了一个sprite类用于创建有图像的物体。而sprites中定义的都是sprite的子类,因此也都是有图片的类。其中包括坦克基类、英雄类(我方坦克)、敌人类(敌方坦克)、子弹类、墙类等。

    而各个类中定义了各自的行为,例如:坦克类有发射子弹的行为、移动的行为、爆炸的行为等。

    (5)settings.py

    settings.py中定义了一些设置信息,包括子弹的数量、子弹的速度、坦克的速度、地图信息、图片信息等。我们可以通过修改settings.py来调整游戏的一些设置,因为还没有写设置相关的操作,所以需要修改源码。

    因为代码比较多,这里就不介绍代码了。游戏还要许多不足之处,后续会继续更新。项目已上传GitHub,欢迎各位来fork。今天就介绍到这里了~

    项目地址:https://github.com/IronSpiderMan/TankWar

    pygame文档地址:https://www.pygame.org/docs/

    本文来源公众号:新建文件夹X,转载请标明出处。

    展开全文
  • Python实现模拟按键和改键精灵

    万次阅读 2019-12-09 10:36:34
    Python实现模拟按键和改键精灵,用以控制拳皇97,亲测有效. VK_CODE:虚拟键码 参考: https://www.cnblogs.com/Evan-fanfan/p/11097519.html https://blog.csdn.net/wang8978/article/details/52900048 ...
    """
    Python实现模拟按键和改键精灵,用以控制拳皇97,亲测有效.
    VK_CODE:虚拟键码
    参考:
    https://www.cnblogs.com/Evan-fanfan/p/11097519.html
    https://blog.csdn.net/wang8978/article/details/52900048
    https://blog.51cto.com/13496943/2347866?source=dra
    """
    import time
    
    import win32con
    import win32api
    
    # 1.实现模拟按键
    VK_CODE = {
        'backspace': 0x08,
        'tab': 0x09,
        'clear': 0x0C,
        'enter': 0x0D,
        'shift': 0x10,
        'ctrl': 0x11,
        'alt': 0x12,
        'pause': 0x13,
        'caps_lock': 0x14,
        'esc': 0x1B,
        'spacebar': 0x20,
        'page_up': 0x21,
        'page_down': 0x22,
        'end': 0x23,
        'home': 0x24,
        'left_arrow': 0x25,
        'up_arrow': 0x26,
        'right_arrow': 0x27,
        'down_arrow': 0x28,
        'select': 0x29,
        'print': 0x2A,
        'execute': 0x2B,
        'print_screen': 0x2C,
        'ins': 0x2D,
        'del': 0x2E,
        'help': 0x2F,
        '0': 0x30,
        '1': 0x31,
        '2': 0x32,
        '3': 0x33,
        '4': 0x34,
        '5': 0x35,
        '6': 0x36,
        '7': 0x37,
        '8': 0x38,
        '9': 0x39,
        'a': 0x41,
        'b': 0x42,
        'c': 0x43,
        'd': 0x44,
        'e': 0x45,
        'f': 0x46,
        'g': 0x47,
        'h': 0x48,
        'i': 0x49,
        'j': 0x4A,
        'k': 0x4B,
        'l': 0x4C,
        'm': 0x4D,
        'n': 0x4E,
        'o': 0x4F,
        'p': 0x50,
        'q': 0x51,
        'r': 0x52,
        's': 0x53,
        't': 0x54,
        'u': 0x55,
        'v': 0x56,
        'w': 0x57,
        'x': 0x58,
        'y': 0x59,
        'z': 0x5A,
        'numpad_0': 0x60,
        'numpad_1': 0x61,
        'numpad_2': 0x62,
        'numpad_3': 0x63,
        'numpad_4': 0x64,
        'numpad_5': 0x65,
        'numpad_6': 0x66,
        'numpad_7': 0x67,
        'numpad_8': 0x68,
        'numpad_9': 0x69,
        'multiply_key': 0x6A,
        'add_key': 0x6B,
        'separator_key': 0x6C,
        'subtract_key': 0x6D,
        'decimal_key': 0x6E,
        'divide_key': 0x6F,
        'F1': 0x70,
        'F2': 0x71,
        'F3': 0x72,
        'F4': 0x73,
        'F5': 0x74,
        'F6': 0x75,
        'F7': 0x76,
        'F8': 0x77,
        'F9': 0x78,
        'F10': 0x79,
        'F11': 0x7A,
        'F12': 0x7B,
        'F13': 0x7C,
        'F14': 0x7D,
        'F15': 0x7E,
        'F16': 0x7F,
        'F17': 0x80,
        'F18': 0x81,
        'F19': 0x82,
        'F20': 0x83,
        'F21': 0x84,
        'F22': 0x85,
        'F23': 0x86,
        'F24': 0x87,
        'num_lock': 0x90,
        'scroll_lock': 0x91,
        'left_shift': 0xA0,
        'right_shift ': 0xA1,
        'left_control': 0xA2,
        'right_control': 0xA3,
        'left_menu': 0xA4,
        'right_menu': 0xA5,
        'browser_back': 0xA6,
        'browser_forward': 0xA7,
        'browser_refresh': 0xA8,
        'browser_stop': 0xA9,
        'browser_search': 0xAA,
        'browser_favorites': 0xAB,
        'browser_start_and_home': 0xAC,
        'volume_mute': 0xAD,
        'volume_Down': 0xAE,
        'volume_up': 0xAF,
        'next_track': 0xB0,
        'previous_track': 0xB1,
        'stop_media': 0xB2,
        'play/pause_media': 0xB3,
        'start_mail': 0xB4,
        'select_media': 0xB5,
        'start_application_1': 0xB6,
        'start_application_2': 0xB7,
        'attn_key': 0xF6,
        'crsel_key': 0xF7,
        'exsel_key': 0xF8,
        'play_key': 0xFA,
        'zoom_key': 0xFB,
        'clear_key': 0xFE,
        '+': 0xBB,
        ',': 0xBC,
        '-': 0xBD,
        '.': 0xBE,
        '/': 0xBF,
        '`': 0xC0,
        ';': 0xBA,
        '[': 0xDB,
        '\\': 0xDC,
        ']': 0xDD,
        "'": 0xDE,
        '`': 0xC0
    }
    
    
    def key_input(input_words=''):
        """
        输入要操作的键(多个),电脑自动模拟输入
        如:sasdj
        :param input_words:
        :return:
        """
        for word in input_words:
            win32api.keybd_event(VK_CODE[word], 0, 0, 0)
            time.sleep(0.04)
            win32api.keybd_event(VK_CODE[word], 0, win32con.KEYEVENTF_KEYUP, 0)
        time.sleep(0.01)
    
    
    def key_even(input_key):
        """
        输入要操作的键(单个),电脑自动模拟输入
        如:w
        :param input_key:
        :return:
        """
        win32api.keybd_event(VK_CODE[input_key], 0, 0, 0)
        time.sleep(0.04)
        win32api.keybd_event(VK_CODE[input_key], 0, win32con.KEYEVENTF_KEYUP, 0)
        time.sleep(0.01)
    
    
    # 方法调用
    # input_words = input('请输入要操作的键(多个):')
    # key_input(input_words)
    #
    # input_word = input('请输入要操作的键(单个):')
    # key_even(input_word)
    
    # 2.监控键盘按键并该键(亲测有效)
    from pynput.keyboard import Listener
    
    
    def press(key):
        try:
            current_key = key.char
            # print('你当前按下的键是:', current_key)
            if current_key == 'Z' or current_key == 'z':
                for i in range(20000):
                    key_input('sasdj')
            elif current_key == 'X' or current_key == 'x':
                for i in range(20000):
                    key_input('sdsaj')
        except Exception as e:
            print(e)
    
    
    with Listener(on_press=press) as listener:
        listener.join()
    

     

    展开全文
  • python实现手势识别

    万次阅读 多人点赞 2020-04-14 20:39:59
    python实现手势识别(入门) 使用open-cv实现简单的手势识别 1.获取视频(摄像头) 2.肤色检测 3.轮廓提取 最终实现结果

    python实现手势识别(入门)

    使用open-cv实现简单的手势识别。刚刚接触python不久,看到了很多有意思的项目,尤其时关于计算机视觉的。网上搜到了一些关于手势处理的实验,我在这儿简单的实现一下(PS:和那些大佬比起来真的是差远了,毕竟刚接触不久),主要运用的知识就是opencv,python基本语法,图像处理基础知识。

    最终实现结果:
    在这里插入图片描述

    获取视频(摄像头)

    这部分没啥说的,就是获取摄像头。
    `

    cap = cv2.VideoCapture("C:/Users/lenovo/Videos/1.mp4")#读取文件
    #cap = cv2.VideoCapture(0)#读取摄像头
    while(True):
        ret, frame = cap.read()    key = cv2.waitKey(50) & 0xFF
        if key == ord('q'):
        	break
    cap.release()
    cv2.destroyAllWindows()
    
    

    肤色检测

    这里使用的是椭圆肤色检测模型
    在RGB空间里人脸的肤色受亮度影响相当大,所以肤色点很难从非肤色点中分离出来,也就是说在此空间经过处理后,肤色点是离散的点,中间嵌有很多非肤色,这为肤色区域标定(人脸标定、眼睛等)带来了难题。如果把RGB转为YCrCb空间的话,可以忽略Y(亮度)的影响,因为该空间受亮度影响很小,肤色会产生很好的类聚。这样就把三维的空间将为二维的CrCb,肤色点会形成一定得形状,如:人脸的话会看到一个人脸的区域,手臂的话会看到一条手臂的形态。

    def A(img):
    
        YCrCb = cv2.cvtColor(img, cv2.COLOR_BGR2YCR_CB) #转换至YCrCb空间
        (y,cr,cb) = cv2.split(YCrCb) #拆分出Y,Cr,Cb值
        cr1 = cv2.GaussianBlur(cr, (5,5), 0)
        _, skin = cv2.threshold(cr1, 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU) #Ostu处理
        res = cv2.bitwise_and(img,img, mask = skin)
        return res
    

    轮廓处理

    轮廓处理的话主要用到两个函数,cv2.findContours和cv2.drawContours,这两个函数的使用使用方法很容易搜到就不说了,这部分主要的问题是提取到的轮廓有很多个,但是我们只需要手的轮廓,所以我们要用sorted函数找到最大的轮廓。

    def B(img):
    
        #binaryimg = cv2.Canny(Laplacian, 50, 200) #二值化,canny检测
        h = cv2.findContours(img,cv2.RETR_EXTERNAL,cv2.CHAIN_APPROX_NONE) #寻找轮廓
        contour = h[0]
        contour = sorted(contour, key = cv2.contourArea, reverse=True)#已轮廓区域面积进行排序
        #contourmax = contour[0][:, 0, :]#保留区域面积最大的轮廓点坐标
        bg = np.ones(dst.shape, np.uint8) *255#创建白色幕布
        ret = cv2.drawContours(bg,contour[0],-1,(0,0,0),3) #绘制黑色轮廓
        return ret
    

    全部代码

    """ 从视频读取帧保存为图片"""
    import cv2
    import numpy as np
    cap = cv2.VideoCapture("C:/Users/lenovo/Videos/1.mp4")#读取文件
    #cap = cv2.VideoCapture(0)#读取摄像头
    
    #皮肤检测
    def A(img):
    
        YCrCb = cv2.cvtColor(img, cv2.COLOR_BGR2YCR_CB) #转换至YCrCb空间
        (y,cr,cb) = cv2.split(YCrCb) #拆分出Y,Cr,Cb值
        cr1 = cv2.GaussianBlur(cr, (5,5), 0)
        _, skin = cv2.threshold(cr1, 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU) #Ostu处理
        res = cv2.bitwise_and(img,img, mask = skin)
        return res
    
    def B(img):
    
        #binaryimg = cv2.Canny(Laplacian, 50, 200) #二值化,canny检测
        h = cv2.findContours(img,cv2.RETR_EXTERNAL,cv2.CHAIN_APPROX_NONE) #寻找轮廓
        contour = h[0]
        contour = sorted(contour, key = cv2.contourArea, reverse=True)#已轮廓区域面积进行排序
        #contourmax = contour[0][:, 0, :]#保留区域面积最大的轮廓点坐标
        bg = np.ones(dst.shape, np.uint8) *255#创建白色幕布
        ret = cv2.drawContours(bg,contour[0],-1,(0,0,0),3) #绘制黑色轮廓
        return ret
    
    
    while(True):
    
        ret, frame = cap.read()
        #下面三行可以根据自己的电脑进行调节
        src = cv2.resize(frame,(400,350), interpolation=cv2.INTER_CUBIC)#窗口大小
        cv2.rectangle(src, (90, 60), (300, 300 ), (0, 255, 0))#框出截取位置
        roi = src[60:300 , 90:300]  # 获取手势框图
    
        res = A(roi)  # 进行肤色检测
        cv2.imshow("0",roi)
    
        gray = cv2.cvtColor(res, cv2.COLOR_BGR2GRAY)
        dst = cv2.Laplacian(gray, cv2.CV_16S, ksize = 3)
        Laplacian = cv2.convertScaleAbs(dst)
    
        contour = B(Laplacian)#轮廓处理
        cv2.imshow("2",contour)
    
        key = cv2.waitKey(50) & 0xFF
        if key == ord('q'):
                break
    cap.release()
    cv2.destroyAllWindows()

    注意:最后送大家一套2020最新企业Pyhon项目实战视频教程,点击此处 进来获取 跟着练习下,希望大家一起进步哦!

    毕竟刚学不久,做出这个东西自己已经很满足了,当然和那些大佬也是没法比的,没有什么东西是速成的,只能一步一个脚印的走。

    展开全文
  • 本文我们来看一下如何使用 Python + Appium 实现定时自动化收取蚂蚁森林能量。 2. 环境 本文主要环境如下: Win7 小米5s Python3.7 Appium1.5 支付宝10.2.6.7010 如果对环境搭建不熟悉的话,可以看一下:Python + ...

    1. 概述

    提到蚂蚁森林,大家应该都知道,你是否有因忘记收取能量而被好友收取的经历呢?

    如果你不是蚂蚁森林重度用户,被别人收取了能量可能对你来说没什么。

    但如果你是蚂蚁森林重度用户,遇到能量被偷 ...

    本文我们来看一下如何使用 Python + Appium 实现定时自动化收取蚂蚁森林能量。

    2. 环境

    本文主要环境如下:

    • Win7

    • 小米5s

    • Python3.7

    • Appium1.5

    • 支付宝10.2.6.7010

    如果对环境搭建不熟悉的话,可以看一下:Python + Appium 自动化操作微信入门我用 Python 找出了删除我微信的所有人并将他们自动化删除了

    3. 实现

    功能实现的基本思路为:

    • 打开支付宝进入蚂蚁森林,收取自己的能量

    • 收取完自己能量后,点击找能量进入好友蚂蚁森林,收取好友能量,以此类推

    接下来我们看一下主要代码实现。

    参数配置代码实现如下:

    desired_caps = {
        "platformName": "Android", # 系统
        "platformVersion": "8.0.0", # 系统版本号
        "deviceName": "m5s", # 设备名
        "appPackage": "com.eg.android.AlipayGphone", # 包名
        "appActivity": "AlipayLogin", # app 启动时主 Activity
        'noReset': True # 保留 session 信息,可以避免重新登录
    }
    

    通常大家都会将蚂蚁森林放在支付宝首页,此时我们打开支付宝后直接点击蚂蚁森林选项即可进入。

    代码实现如下:

    driver.find_elements_by_id('com.alipay.android.phone.openplatform:id/home_app_view')[10].click()
    

    进入自己蚂蚁森林之后,开始收取自己的能量,因为新版支付宝不能定位能量球元素了,所以我们需要在能量球可能出现的区域实现点击。收取能量的代码实现如下:

    # 收取能量
    def collect_energy(driver):
        print('开始收取能量')
        # 获取手机屏幕宽高
        width = int(driver.get_window_size()['width'])
        height = int(driver.get_window_size()['height'])
        # 能量球可能出现的区域坐标
        start_x = 110
        end_x = 940
        start_y = 460
        end_y = 880
        for i in range(start_y, end_y, 80):
            for j in range(start_x, end_x, 80):
                tap_x1 = int((int(j) / width) * width)
                tap_y1 = int((int(i) / height) * height)
                # 点击指定坐标
                driver.tap([(tap_x1, tap_y1), (tap_x1, tap_y1)], 1000)
        print('能量收取完毕')
    

    自己能量收取完毕之后,点击找能量进入好友蚂蚁森林继续收取能量,代码实现如下:

    # 找能量
    def search_energy(driver):
        print('找能量,收取好友能量')
        time.sleep(3)
        # 点击找能量
        driver.tap([(1000, 1520), (1080, 1580)], 1000)
        time.sleep(3)
        # 收取好友能量
        collect_energy(driver)
        time.sleep(3)
        # 收取完毕继续找能量
        search_energy(driver)
    

    能量收取的功能实现了之后,我们使用定时任务实现定时收取即可,下面看一下定时任务的实现。

    定时任务的实现我们使用 apscheduler 组件,使用之前需执行 pip install apscheduler 装一下。

    定时任务的代码实现如下:

    scheduler = BlockingScheduler()
    # collect_main:定时执行的方法
    scheduler.add_job(collect_main, 'cron', hour=20, minute=23, second=20)
    try:
        scheduler.start()
    except (KeyboardInterrupt, SystemExit):
        pass
    

    到此,我们利用 Python + Appium 实现定时自动化收取蚂蚁森林能量的工作就完成了。

    源码在公号 Python小二 后台回复 201116 获取。

    < END >

    原创不易,求分享、在看、赞

    展开全文
  • Python实现5毛钱特效

    万次阅读 多人点赞 2020-04-16 17:19:43
    请务必看到最后。Python牛已经不是一天两天的事了,但是我开始也没想到,Python能这么牛。
  • Python 实现十大经典排序算法

    万次阅读 多人点赞 2020-10-24 00:12:00
    目录排序算法分类一、冒泡排序(Bubble Sort)1、原理2、步骤3、动画演示4、代码实现5、具体示例二、选择排序(Selection Sort)1、原理2、步骤3、动画演示4、代码实现5、具体示例三、插入排序(Insertion Sort)1、...
  • python实现九九乘法表

    万次阅读 2021-01-21 21:18:14
    python实现九九乘法表 如何用python实现九九乘法表 直接上代码,利用for循环 for i in range(1, 10): for j in range(1, i+1): print(f'{j}*{i}={i*j}', end='\t') print() 代码这里要注意j的范围要在1到i+1...
  • python实现ocr

    万次阅读 2018-10-28 15:54:07
    python实现ocr 前期准备 在这个阶段主要准备整个小程序的结构,既然要实现ocr,那么输入就是一张图片,而图片这里采用屏幕截图的方式获得,输出是文字,这里采用搜狗的ocr接口,我们把截好的图片传到搜狗ocr接口中,...
  • Python 实现单例

    千次阅读 2019-06-11 21:27:30
    Python 实现单例 文章目录Python 实现单例起步__new__函数元类 metaclass装饰器函数装饰器类装饰器方法静态方法 staticmethod类方法 classsmethod名字覆盖属性共享 起步 单例模式是一种常用的软件设计模式,用来...
  • Python实现发短信

    万次阅读 2020-01-11 23:05:20
    改写互亿无线官方发短信代码类实现 输出结果: <?xml version="1.0" encoding="utf-8"?> <SubmitResult xmlns="http://106.ihuyi.com/"> <code>2</code> <msg>提交成功</msg> &...
  • Python实现数据库之间的数据迁移

    万次阅读 2018-03-01 11:35:08
    Python实现的数据库跨服务器(跨库)迁移, 每以5000条一查询一提交, 代码中可以自行更改每次查询提交数目. # -*- coding: utf-8 -*- import MySQLdb import time import warnings warnings.filterwarnings("...
  • python 实现屏幕录制

    千次阅读 2019-06-12 10:19:50
    python实现屏幕录制 PIL 即pollow 的安装命令如下: pip install pillow 其中cv2的安装是下面这条命令 pip install opencv-python 代码实现: # coding: utf-8 from PIL import ImageGrab import numpy as np ...
  • python实现微信聊天机器人

    万次阅读 多人点赞 2018-05-21 17:59:12
    python实现微信聊天机器人 具备基础:会编程就ok 电脑环境:已经安装过python,在命令行输入python能成功就行 在准备工作做完之后,就可以进入正式开发了,其实这个程序主要是使用了图灵机器人的接口,你...
  • Python实现 灰色关联分析 与结果可视化

    万次阅读 多人点赞 2018-06-07 13:21:45
    之前在比赛的时候需要用Python实现灰色关联分析,从网上搜了下只有实现两个列之间的,于是我把它改写成了直接想Pandas中的计算工具直接计算person系数那样的形式,可以对整个矩阵进行运算,并给出了可视化效果,效果请见...
  • python实现截图功能

    万次阅读 多人点赞 2018-01-18 17:11:27
    python实现截图功能
  • Python实现自己的分布式区块链视频培训教程:区块链技术近非常的火,去中心化,挖矿各种概念层出不穷。本课程的目标便是通过Python区块链技术实现自己的区块链,课程中会讲到Python3实现区块链的数据结构,Python3...
  • 1、回顾三目元算符 对于条件表达式 b ? x : y,先计算条件b,然后进行判断。如果b的值为true,计算x的值,运算结果为x的值;否则,计算y的值,运算结果为y的... 上图可以看出,python实现了和三目运算符差不多的功...
  • python 实现开方

    千次阅读 2018-11-07 16:32:26
    问题描述:利用python实现开根号操作 1.调用库的方法 import math res = math.sqrt(x) 或者一个python特性的方法 res = x ** 0.5 2.二分法实现 二分法实现要主要x的范围,对应的二分范围也不同: 时,二分...
  • Python实现ROS节点

    万次阅读 2017-01-02 18:28:59
    这里讲解如何利用Python实现ROS节点的编写。教程参考官网rospy_tutorials。1. 编写一个简单的发布者和订阅者1创建工作空间建立文件夹hello_rospy,再在该目录下建立子目录src,cd到该src目录,运行如下命令创建工作包...
  • Python实现softmax函数

    万次阅读 2019-03-03 18:15:49
    Python实现softmax函数: PS:为了避免求exp(x)出现溢出的情况,一般需要减去最大值。 # -*-coding: utf-8 -*- import tensorflow as tf import numpy as np def softmax(x, axis=1): # 计算每行的最大值 ...
  • python实现闰年判断

    万次阅读 2018-03-25 09:02:47
    python实现闰年判断
  • python实现opencv学习一:安装、环境配置、工具

    万次阅读 多人点赞 2018-03-09 20:51:58
    一:python的下载、安装、配置 以python2.7.9为例 http://blog.csdn.net/FUCAIHE/article/details/45353283 若需其他最新版本请到官网下载:https://www.python.org/downloads/ 二:安装pip 进入Python安装...
  • python实现全排列

    千次阅读 2019-07-02 14:24:02
    对于解释,我觉得以下这篇文章不错! https://www.cnblogs.com/zyoung/p/6764371.html python实现: def AllRange(listx, start, end): if start == end: for i in listx: print(i,end = '') print() ...
  • python实现自动拨号

    千次阅读 2019-03-17 09:00:50
    python实现自动拨号 标签: windows python 缘起 实验室有两台电脑,一台台式,一个笔记本,台式连着宽带,并且上面有一个小服务需要联网,因为实验室的网络不是很稳定,所以可能有时候网络会自动掉线,所以每次都...
  • ELM python实现

    万次阅读 2018-03-10 14:30:09
    日常扯:ELM的Python实现是在上个学期已经完成的工作,这周重新打开,发现对一些基本的操作还是不熟悉,借此机会进行整理 铺垫 关于ELM 极限学习机(Extreme Learning Machine) ELM,是2006年由黄广斌提出来的...
  • Python实现图片裁剪的两种方式——Pillow和OpenCV

    万次阅读 多人点赞 2018-09-03 18:25:41
    在这篇文章里我们聊一下Python实现图片裁剪的两种方式,一种利用了Pillow,还有一种利用了OpenCV。两种方式都需要简单的几行代码,这可能也就是现在Python那么流行的原因吧。 首先,我们有一张原始图片,如下图所示...
  • Python实现扫码工具

    千次阅读 多人点赞 2020-09-30 16:40:39
    Python实现扫码工具 二维码作为一种信息传递的工具,在当今社会发挥了重要作用。从手机用户登录到手机支付,生活的各个角落都能看到二维码的存在。那你知道二维码是怎么解析的吗?有想过自己实现一个扫码工具吗?...
  • Python实现屏幕截图

    千次阅读 多人点赞 2019-06-10 20:09:09
    Python实现屏幕截图有两种方式: 使用windows API 使用PIL中的ImageGrab模块 下面对两者的特点和用法进行详细解释。 Python调用windows API实现屏幕截图 好处是 灵活 速度快 缺点是: 写法繁琐 不跨平台 ...
  • python实现PID

    万次阅读 多人点赞 2017-02-08 16:01:08
    最近捣鼓ROS的时候,发现github上有人用python实现了PID,虽然可能执行效率不高,但是用python写工具的时候还是很方便的。从github上把代码搬下来,简单分析一下 给代码: 在截个都看烦了的公式意思一下吧 #!/usr...
  • Python实现字典树

    千次阅读 2018-08-28 17:11:31
    python实现字典树 前言 实现 附言 python实现字典树 前言  下文实现的字典树的目的其实并非用于存储字符,而是存储每个词语(虽然原理一致),并且支持获取某个词语序列的前后缀及其频率。当然,还缺少...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 335,397
精华内容 134,158
关键字:

python实现

python 订阅