找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 1618|回复: 1
打印 上一主题 下一主题

[代码与实例] 调用其他模块中的bian

1

主题

2

帖子

2

积分

贫民

积分
2
跳转到指定楼层
楼主
王晓宁 发表于 2020-9-15 15:34:32 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
各位专家:   我使用的Python3环境是3.8
   我目前已成实现了某一个函数的功能,由于感觉程序复杂化,所以想把一部分函数放在另外一个PIDT_Step_Three.py 文件。
   在主文件PIDT_Main调用这个PIDT_Step_Three文件中的函数,以及函数运行后的结果。
  但是发现目前这个结果总是变量的初始化。
   调用的时候 import   和 from...import 都进行了测试,一直是返回的初始化的值,请问有什么办法可以使用该模块的值呢?
   希望各位专家留下自己的意见,关于如何调用另外一个函数的变量

测试结果PNG.PNG (83.31 KB, 下载次数: 14)

测试结果PNG.PNG
回复

使用道具 举报

1

主题

2

帖子

2

积分

贫民

积分
2
沙发
王晓宁  楼主| 发表于 2020-9-15 15:40:06 | 只看该作者
上图是 PIDT_Main.py的代码,我现在上传PIDT_Step_Three.py的代码

import threading, time
import pyautogui
from PIL import Image

def delay_s():
    print(time.time())


Step_Three_OK = False

def Step_Three():
    """
    PIDT操作第三步,通过截图查看颜色是否为红色(REB),不是红色,一直在循环
    """
    REB = [0, 0, 0]
    Step3Counter = 0;
    print(REB)
    #im = pyautogui.screenshot()
    #Image._show(im)  #查看所截图的图片
    #REB = im.getpixel((46, 195))
    #print(im.getpixel((46, 195)))
    #print(REB[0])
    while True:
        pyautogui.click()
        im = pyautogui.screenshot()
        # Image._show(im)  #查看所截图的图片
        REB = im.getpixel((46, 195))
        if REB[0] != 153:
            pyautogui.moveTo(713, 344)
            #print(im.getpixel((46, 195)))
            #print(REB[0])
            s = threading.Timer(1, delay_s)  # 1s时基,循环10次 用线程做的延时
            s.start()
            Step3Counter = Step3Counter + 1
            #print(Step3Counter)
            if Step3Counter > 10:
                break
            Step_Three_OK = False
        else:
            Step_Three_OK = True

            break
    Step_Three_OK = True
    print(Step_Three_OK)[/code]
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表