Skip to main content

常用工具集合

Project description

zxcglf模块 帮助文档

编写目的

  • 有些简单的函数经常使用,整理成模块方便调用
  • 复杂函数依赖库多,在模块中拆成多个小函数,部分整合成大函数有助于提升效率
  • 自己写的第一个模块,了解模块制作并实践一下?
  • 模块名称自然用了老婆名字的缩写哟

模块特征

  • 函数的命名以其存在的细分py文件为首,作用为尾,例:作用为y的函数来自x.py,则名称为x_y()

声明

  • 随包颁发麻省理工学院(MIT)许可证,为开源模块
  • 代码中可能会存在很多不足之处,望理解与指出,精益求精是我对该模块的执着追求

特别感谢

  • borax
  • datetime
  • pyautogui
  • pywin32
  • pandas
  • openpyxl
  • opencv-python
  • win32gui
  • 特别感谢以上这些模块的作者,本模块离不开你们的贡献
  • 以上排列不分先后

运行环境

#!/usr/bin/env python3

使用编码

# -*- coding: utf-8 -*-

模块目录结构


zxcglf
│ LICENSE
│ README.md
│ setup.py
├─demos
└─zxcglf
├─csv.py
├─debug.py
├─file.py
├─img.py
├─keyboard.py
├─mouse.py
├─password.py
├─path.py
├─system.py
├─time.py
├─tool.py
├─window.py
├─xlsx.py
└─init.py

GitHub URL

点击访问

更新、程序开发进度

  • 更新日志

    • 第一次大更新

      • 更新日期:2021/11/28
      • 从无到有,建立工程
      • 大致确定了制作与更新的方向
      • 对前代模块进行了BUG修复与整理
    • 第一次大更新补丁

      • 更新日期:2021/11/28
      • 连夜更新,为解决一个导入问题
    • 第二次大更新

      • 更新日期:2021/12/01
      • 建立了keyboard.py
      • 建立了window.py
      • 更新了mouse.py
      • 因为上面三条原因,多了一堆新函数
    • 第三次大更新[测试版本]

      • 更新日期:2021/12/28
      • 建立了img.py
      • 更新了path.py
      • 更新了time.py并修复time_now_get函数与time_change_stamp函数的月、日两项精度输出错误的BUG
      • 修复了mouse.py下错误的函数名"mouse_get_positon"改为"mouse_get_position"
    • 第三次大更新补丁1[测试版本]

      • 更新日期:2021/12/28
      • 修复了关于农历含时间精度函数无法返回中文时间的BUG
    • 第三次大更新补丁2[测试版本]

      • 更新日期:2021/12/29
      • 修复了关于window.py未导入win32gui库的错误
    • 第四次大更新[测试版本]

      • 更新日期:2021/12/31
      • 更新了debug.py
      • 排查了V2.0.2无法正常安装的原因,原因是win32gui在python3.7以上版本被整合入pywin32模块
      • 由于上述原因,我们将从setup.py中移除对win32gui的依赖指示,若仍在使用python3.7以下版本,请手动安装win32gui模块
    • 第四次大更新补丁

      • 更新日期:2021/12/31
      • 修复了关于window.py未导入win32con库的错误
      • 双旦将至,节日快乐
    • V1.0

      • 更新日期:2022/2/24
      • 新增密码服务password.py
      • 新增操作系统服务system.py
      • 新增常用工具tool.py
      • 更新许可证

函数功能详细介绍


        * debug_normal:普通调试
            * 功能
                * 传入一个字符串,在其最前方加入[DEBUG]字样
                * 这样做虽然需要给每个语句加入注释
                * 但能方便找出具体错误位置和原因
                * 也可做成日志系统
            * 用法
                * debug_normal(调试提示信息)
            * 注意事项
                * 调试提示信息必须是字符串

        * debug_with_time:带时间追踪的调试
            * 功能
                * 传入一个字符串,在其最前方加入[DEBUG]字样
                * 相比于debug_normal(),加入了时间戳
                * 这样做虽然需要给每个语句加入注释
                * 但能方便找出具体错误位置和原因
                * 也可做成带时间记录的日志系统
            * 用法
                * debug_with_time(调试提示信息,时间精度)
            * 注意事项
                * 调试提示信息必须是字符串
                * 时间精度必须是字符串,0或1

        * time_now_get:返回当前已格式化的时间
            * 功能
                * 该函数提供日期
                * 通过给定精度参数
                * 精度表示可使用中文
                * 返回当前的具体日期
                * 最终日期数据通过变量now_time返回
                * 若精度格式存在问题(TI00)会返回错误信息
            * 用法
                * time_now_get(时间精度) 
            * 注意事项
                * 时间精度必须是字符串,0或1
                * 精度格式中文:年、月、日、时、分、秒、毫秒
                * 精度英文格式:y,month,d,h,m,s,ms
                * 中文可直接组合,例如:年月日时分秒
                * 英文组合必须用"."分隔,例如:y,month,d,h,m,s
                * 精度参数为"0"时相当于返回时分秒
                * 精度参数为"1"时相当于返回时分秒毫秒                        

        * mouse_move
            * 功能
                * 移动光标到指定坐标
                * 给定三个参数,分别是目标坐标的横纵坐标值以及持续时间
                * 持续时间可缺省,默认值为0
            * 用法
                * mouse_move(目标横坐标,目标纵坐标,持续时间(可缺省,默认值为0))
            * 注意事项
                * 无

        * mouse_click_left
            * 功能
                * 移动光标到指定坐标并左键单击
                * 给定两个参数,分别是目标坐标的横纵坐标值
            * 用法
                * mouse_click_left(目标横坐标,目标纵坐标)
            * 注意事项
                * 可能需要系统较高权限才对某些程序有效

        * mouse_click_right
            * 功能
                * 移动光标到指定坐标并右键单击
                * 给定两个参数,分别是目标坐标的横纵坐标值
            * 用法
                * mouse_click_right(目标横坐标,目标纵坐标)
            * 注意事项
                * 可能需要系统较高权限才对某些程序有效                                   

        * mouse_get_position
            * 功能
                * 返回目前光标的横纵坐标
            * 用法
                * mouse_get_position()
            * 注意事项
                * 无

        * mouse_drag
            * 功能
                * 拖拽内容到指定位置
                * 给定三个参数,分别是目标坐标的横纵坐标值以及持续时间
                * 持续时间可缺省,默认值为0
            * 用法             
                * mouse_drag(目标横坐标,目标纵坐标,持续时间(可缺省,默认值为0))
            * 注意事项
                * 可能需要系统较高权限才对某些程序有效
                * 拖拽起点为光标当前位置

        * mouse_scroll_up
            * 功能
                * 向上滚动
                * 给定一个参数,为滚动的像素值
            * 用法             
                * mouse_scroll_up(滚动的像素值)
            * 注意事项
                * 无

        * mouse_scroll_down
            * 功能
                * 向下滚动
                * 给定一个参数,为滚动的像素值
            * 用法             
                * mouse_scroll_down(滚动的像素值)
            * 注意事项
                * 无

        * path_desktop
            * 功能
                * 在Windows操作系统下,返回桌面路径
            * 用法
                * path_desktop(参数缺省)
            * 注意事项
                * 这在其他操作系统上无法工作

        * file_select
            * 功能
                * 在Windows操作系统下,给定一个主页路径
                * 打开文件选择器浏览文件
                * 若直接关闭文件选择器,将无法跳出循环
            * 用法
                * file_select(文件选择器主页路径)
            * 注意事项
                * 这在其他操作系统上无法工作

        * csv_read_column
            * 功能
                * 读取csv的某列
                * 将返回一个列表
            * 用法
                * csv_read_column(csv文件路径, 要读取的列数,编码)
            * 注意事项
                * 使用自然计数的列数
                * 编码缺省则为UTF-8

        * time_change_stamp
            * 功能
                * 将时间戳转换为格式化的时间
            * 用法
                * time_change_stamp(时间戳, 精度)
            * 注意事项
                * 时间戳应该为一个整数
                * 精度格式见time_now_get
                * 但注意,时间戳将不存在毫秒精度

        * file_folder_create_if_non_exist
            * 功能
                * 检查目录是否存在
                * 若不存在则创建
            * 用法
                * file_folder_create_if_non_exist(目录路径)
            * 注意事项
                * 无

        * file_file_create_if_non_exist
            * 功能
                * 检查文件及其根目录是否存在
                * 若不存在则创建
                * 拓展名可缺省
            * 用法
                * file_file_create_if_non_exist(根目录路径, 文件名, 文件拓展名)
            * 注意事项
                * 无

        * file_list
            * 功能
                * 给定路径以及文件拓展名
                * 返回一个含有该目录下指定拓展名的文件的列表
                * 当文件拓展名参数被缺省时
                * 将返回一个含有该路径下所有的文件以及文件夹的列表
            * 用法
                * file_list(路径)
            * 注意事项
                * 无

        * file_file_exist
            * 功能
                * 检查一个文件是否存在
                * 若不存在则返回False
                * 存在则返回True
            * 用法
                * file_file_exist(文件路径)
            * 注意事项
                * 无

        * xlsx_open
            * 功能
                * 给定一个xlsx的路径将其打开
                * 以一个变量返回该文件
            * 用法
                * xlsx_open(文件路径)
            * 注意事项
                * 无

        * xlsx_open_sheet
            * 功能
                * 给定一个xlsx
                * 打开其中的工作表
                * 若参数sheetname(第二项)缺省,则列出可选内容
            * 用法
                * xlsx_open_sheet(工作簿, 工作表名称(可缺省))
            * 注意事项
                * 无

        * mouse_click_middle
            * 功能
                * 移动光标到指定坐标并中键单击
                * 给定两个参数,分别是目标坐标的横纵坐标值
            * 用法
                * mouse_click_middle(目标横坐标,目标纵坐标)
            * 注意事项
                * 可能需要系统较高权限才对某些程序有效

        * keyboard_type_string
            * 功能
                * 给定一个字符串,模拟键盘输入
                * 第二项参数是字符间时间间隔,单位为秒,缺省则默认为0
            * 用法
                * keyboard_type_string(要模拟输入的字符串, 字符间时间间隔(可缺省,默认为0))
            * 注意事项
                * 可能需要系统较高权限才对某些程序有效

        * keyboard_press
            * 功能
                * 给定一个按键名或者包含多个按键名的列表
                * 模拟键盘按键并自动松开
            * 用法
                * keyboard_press(一个按键名或者包含多个按键名的列表)
            * 注意事项
                * 可能需要系统较高权限才对某些程序有效
                * 按键名称应遵循《键盘按键名称表》

        * keyboard_down
            * 功能
                * 给定一个按键名
                * 模拟键盘按下
            * 用法
                * keyboard_down(一个按键名)
            * 注意事项
                * 可能需要系统较高权限才对某些程序有效
                * 按键名应在字符串内
                * 按键名称应遵循《键盘按键名称表》

        * keyboard_up
            * 功能
                * 给定一个按键名
                * 模拟键盘松开
            * 用法
                * keyboard_up(一个按键名)
            * 注意事项
                * 可能需要系统较高权限才对某些程序有效
                * 按键名应在字符串内
                * 按键名称应遵循《键盘按键名称表》

        * keyboard_hotkey
            * 功能
                * 给定按键名(不定项),以半角逗号分隔
                * 模拟键盘热键
            * 用法
                * keyboard_hotkey(按键1,按键2,······,按键n)
            * 注意事项
                * 可能需要系统较高权限才对某些程序有效
                * 按键名应在字符串内
                * 按键名称应遵循《键盘按键名称表》

        * 键盘按键名称表
            * \t, \n, \r,  , !, ", #, $, %, &, "", (, ), *, +, ,, -, .,
          /, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, :, ;, <, =, >, ?, @,
          [, \\, ], ^, _, `, a, b, c, d, e, f, g, h, i, j, k, l,
          m, n, o, p, q, r, s, t, u, v, w, x, y, z, {, |, }, ~,
          accept, add, alt, altleft, altright, apps, backspace, browserback,
          browserfavorites, browserforward, browserhome, browserrefresh, browsersearch,
          browserstop, capslock, clear, convert, ctrl, ctrlleft, ctrlright, decimal,
          del, delete, divide, down, end, enter, esc, escape, execute, f1, f10,
          f11, f12, f13, f14, f15, f16, f17, f18, f19, f2, f20, f21, f22,
          f23, f24, f3, f4, f5, f6, f7, f8, f9, final, fn, hanguel, hangul,
          hanja, help, home, insert, junja, kana, kanji, launchapp1, launchapp2,
          launchmail, launchmediaselect, left, modechange, multiply, nexttrack,
          nonconvert, num0, num1, num2, num3, num4, num5, num6, num7, num8, num9,
          numlock, pagedown, pageup, pause, pgdn, pgup, playpause, prevtrack, print,
          printscreen, prntscrn, prtsc, prtscr, return, right, scrolllock, select,
          separator, shift, shiftleft, shiftright, sleep, space, stop, subtract, tab,
          up, volumedown, volumemute, volumeup, win, winleft, winright, yen, command,
          option, optionleft, optionright

        * window_delete_button_close
            * 功能
                * 删除本窗口的关闭按钮
            * 用法
                * window_delete_button_close()
            * 注意事项
                * 每次运行应只使用一次

        * window_delete_button_max
            * 功能
                * 删除本窗口的最大化按钮
            * 用法
                * window_delete_button_max()
            * 注意事项
                * 每次运行应只使用一次

        * window_delete_button_min
            * 功能
                * 删除本窗口的最小化按钮
            * 用法
                * window_delete_button_min()
            * 注意事项
                * 每次运行应只使用一次

        * window_delete_size
            * 功能
                * 删除本窗口的大小拖动功能
            * 用法
                * window_delete_size()
            * 注意事项
                * 每次运行应只使用一次

        * window_set_title
            * 功能
                * 设置本窗口的窗口标题
            * 用法
                * window_set_title(要设置的窗口标题)
            * 注意事项
                * 无

        * path_user
            * 功能
                * 在Windows操作系统下,返回用户主目录路径
            * 用法
                * path_user(参数缺省)
            * 注意事项
                * 这在其他操作系统上无法工作

        * path_documents
            * 功能
                * 在Windows操作系统下,返回用户文档目录路径
            * 用法
                * path_documents(参数缺省)
            * 注意事项
                * 这在其他操作系统上无法工作

        * path_downloads
            * 功能
                * 在Windows操作系统下,返回用户下载目录路径
            * 用法
                * path_downloads(参数缺省)
            * 注意事项
                * 这在其他操作系统上无法工作

        * path_pictures
            * 功能
                * 在Windows操作系统下,返回用户图片目录路径
            * 用法
                * path_pictures(参数缺省)
            * 注意事项
                * 这在其他操作系统上无法工作

        * path_videos
            * 功能
                * 在Windows操作系统下,返回用户视频目录路径
            * 用法
                * path_videos(参数缺省)
            * 注意事项
                * 这在其他操作系统上无法工作

        * path_music
            * 功能
                * 在Windows操作系统下,返回用户音乐目录路径
            * 用法
                * path_music(参数缺省)
            * 注意事项
                * 这在其他操作系统上无法工作

        * path_favorites
            * 功能
                * 在Windows操作系统下,返回用户收藏目录路径
            * 用法
                * path_favorites(参数缺省)
            * 注意事项
                * 这在其他操作系统上无法工作

        * img_read
            * 功能
                * 给定图片的路径,返回带有图片的变量
            * 用法
                * img_read(图片路径)
            * 注意事项
                * 图片路径必须不含中文字符

        * img_gray
            * 功能
                * 给定一张图片,返回转化为灰度图片的该图的变量
            * 用法
                * img_gray(图片变量)
            * 注意事项
                * 无

        * img_display
            * 功能
                * 给定一张图片,然后显示
            * 用法
                * img_display(图片变量, 窗口的标题,缺省则为空, 等待键盘输入以关闭窗口的时间, 单位:秒,缺省则为0,意为无限等待, 执行完成后是否自动关闭窗口,默认为1,意为关闭,0则不关闭)
            * 注意事项
                * 窗口标题必须不含中文字符

        * img_resize
            * 功能
                * 给定一张图片,转换的目标宽高,返回改变长宽后的图片
            * 用法
                * img_resize(图片变量, 目标宽度, 目标高度)
            * 注意事项
                * 无

        * time_lunar_now_get
            * 功能
                * 给定一个时间精度参数(形如:年月日),若参数以“中”开头则返回中文日期
                * 返回当前日期下的农历日期
                * 精度参数缺省则为数字日期
            * 用法
                * time_lunar_now_get(时间精度(缺省则返回数字日期))
            * 注意事项
                * 仅支持公历范围1900-2100年

        * time_lunar_from_solar
            * 功能
                * 给定一个时间精度参数(形如:年月日),若精度参数以“中”开头则返回中文日期,以及公历年月日
                * 返回给定的公历日期对应的农历日期
                * 精度参数缺省则为数字日期
            * 用法
                * time_lunar_from_solar(公历日期年份, 公历日期月份, 公历日期日, 时间精度(缺省则返回数字日期))
            * 注意事项
                * 仅支持公历范围1900-2100年

        * time_lunar_now_get_animal
            * 功能
                * 获取当前农历日期对应的的属相
            * 用法
                * time_lunar_now_get_animal(参数缺省)
            * 注意事项
                * 仅支持公历范围1900-2100年

        * time_lunar_from_solar_animal
            * 功能
                * 给定一个公历日期,返回对应农历日期对应的的属相
            * 用法
                * time_lunar_from_solar_animal(公历日期年份, 公历日期月份, 公历日期日)
            * 注意事项
                * 仅支持公历范围1900-2100年

        * time_lunar_to_solar
            * 功能
                * 给定一个农历日期,返回对应公历日期
            * 用法
                * time_lunar_from_solar_animal(农历日期年份, 农历日期月份, 农历日期日)
            * 注意事项
                * 仅支持公历范围1900-2100年

        * debug_error_notice
            * 功能
                * 给定错误来源和错误提示内容,将给予相应提示
                * 返回错误信息字符串,仅在印屏幕参数为0或2时生效
            * 用法
                * debug_error_notice(错误来源,仅在passage参数不为空时允许缺省, 错误提示内容,仅在passage参数不为空时允许缺省, 错误提示的头部文字,若缺省则使用DEBUG功能的默认头部‍,且此时参数source、text不允许缺省, 是否输出为印屏幕,1为是,0为否,若缺省则印屏幕,2为印屏幕同时返回,否则返回为字符串)
            * 注意事项
                * 无

        * password_get
            * 功能
                * 给定一个提示信息,程序将提供密码输入栏
                * 用户输入回车标定为密码输入完成
                * 用户输入退格删除一个字符
                * 用户输入Esc清空密码栏
                * 返回用户确认完成的密码
            * 用法
                * password_get(密码提示信息)
            * 注意事项
                * 无

        * system_type_get
            * 功能
                * 参数缺省
                * 返回操作系统的类型
                * 在Windows平台下返回"Windows"
                * 在Linux平台下返回"Linux"
                * 在MacOS平台下返回"MacOS"
                * 在其他平台下返回"Other"
           * 用法
               * system_type_get(参数缺省)
           * 注意事项
               * 无

        * system_type_detail_get
            * 功能
                * 参数缺省
                * 返回具体操作系统的类型
           * 用法
               * system_type_detail_get(参数缺省)
           * 注意事项
               * 无

        * tool_shutdown_computer
            * 功能
                * 给定一个时间,单位为分钟,将在该时间后关闭计算机,若缺省则为0
                * 仅在遇到不支持的操作系统时返回提示信息
           * 用法
               * tool_shutdown_computer(剩余关机时间,若缺省则为0)
           * 注意事项
               * 目前仅支持Windows、Linux、MacOS

Copyright © zxcglf 2021-2022

Project details


Release history Release notifications | RSS feed

This version

1.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

zxcglf-1.0.tar.gz (20.3 kB view details)

Uploaded Source

File details

Details for the file zxcglf-1.0.tar.gz.

File metadata

  • Download URL: zxcglf-1.0.tar.gz
  • Upload date:
  • Size: 20.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.9.6

File hashes

Hashes for zxcglf-1.0.tar.gz
Algorithm Hash digest
SHA256 8326f8ac86fe7739466c0fec2ea2754f33ba478c61116e00a78b6b21c1c383a2
MD5 35508e1aab718430c7825cce5be5f0b1
BLAKE2b-256 dc796ff33191e97b58d5750a1ac647af226094b4cd1a0471b5990fe53ceda870

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page