您的位置:首页 > 编程语言 > Python开发

python 0基础学习笔记6:OS模块、窗口控制、语言、内存修改

2020-01-12 22:42 459 查看

OS:包含普遍的操作系统的功能:

import os
#获取操作系统类型:nt-windows,posix-Linux,Unix或Mac OS X
print(os.name)
#获取操作系统详细的信息,windows不支持。
print(os.uname())
#获取系统所有的环境变量
print(os.environ)
#获取指定环境变量
print(os.environ.get())
#获取当前目录
print(os.curdir)
#获取当前工作目录,即当前python脚本所在的目录
print(os.getcwd())
#以列表的形式,返回指定目录下的所有文件
print(os.listdir())
#在当前目录下创建新目录
os.mkdir('abcd')
#os.mkdir(r'C:\1234')这样也可以是绝对路径
#删除目录
os.rmdir('abcd')
#os.rmdir(r'C:\1234')这样也可以是绝对路径
#获取文件属性
print(os.stat('abcd'))
#重命名
os.rename('abcd','12')
#删除普通文件
print(os.remove('1.txt')
#运行shell命令
os.system()
os.system('notepad')#记事本
os.system('write')#写字板
os.system('mspaint')#画板
os.system('shutdown -s -t  500 ')#自动关机
os.system('shutdown -a')#注销(自动关机)被取消
os.system('mingzi.exe')#关闭文件

有些方法存在于os模块里,还有些存在于os.path里。

#查看当前绝对路径,‘.’表示当前路径
print(os.path.abspath('.'))
#拼接路径
print(os.path.join(p1,p2))#注意参数p2的里面开始不要有\。
#拆分路径
print(os.path.split(p3)#将最后一个拆出来,拆成一个元组
#获取扩展名
print(os.path.splitext(p3)#如果没有扩展名,那么最后一个元素就是空
#判读是否是目录
print(os.path.isdir(p3)
#判断文件是否存在
print(os.path.isfile(p3)
#判断目录是否存在
print(os.path.isfile(p4)
#获取文件大小
#判断文件是否存在(字节)
print(os.path.getsize(p3)
#获取文件名
import os
p3=r'F:\1.txt'
print(os.path.dirname(p3))#结果为:F:\
print(os.path.basename(p3))#1.txt

窗口控制:

import win32con
import win32gui
import time
QQWin = win32gui.FindWindow('类','标题')#类和标题从软件获取

#隐藏窗体
win32gui.ShowWindow(QQWin,win32con.SW_HIDE)
time.sleep(2)#停两秒钟
#显示窗体
win32gui.ShowWindow(QQWin,win32con.SW_SHOW)

语言:

1、语音合成

控制面板-语音识别-文本到语音转换-预听语音(这是系统自带的,我们要做的是用程序调用)

import win32com.client#系统客户端
dehua = win32com.client.Dispatch('SAPI.SPVOICE')
dehua.Speek('123456789')

2、语音模块

内存修改:

import win32process#进程模块
import win32con
import win32api
import ctypes

PROCESS_ALL_ACCESS = (0x000F0000|0x00100000|0xFFF)#位运算
#找窗体
win = win32gui.FindWindow('MainWindow','软件名')
#根据窗体找到进程号
hid.pid = win32process.GetWindowThreadProcessId(win)
#以最高权限打开进程
p = win32api.OpenProcess(PROCESS_ALL_ACCESS,False,pid)
# data = ctypes.c_long()
#加载内核模块
md = ctypes.wind11.LoadLibrary('c:\\Windows\\System32\\kernel32')
#读取内存
md.ReadProcessMemory(int(p),311944712,ctypes.byref(data),4,None))
print('data=',data)
#新值
newData = ctypes.c_long(10000)
#修改
md.WriteProcessMemory(int(p),311944712,ctypes.byref(newdata),4,None)
  • 点赞
  • 收藏
  • 分享
  • 文章举报
佳佳佳佳佳111 发布了22 篇原创文章 · 获赞 0 · 访问量 94 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: