多线程(了解)和打开其他应用程序

多线程(了解)和打开其他应用程序

书籍把我们引入最美好的社会,使我们认识各个时代的伟大智者。——史美尔斯

多线程

概念

单线程只得是代码由上到下执行的,不能跳步执行。也就是一个卡死的话,后面都不执行.所以必须引入多线程的概念

  • 多线程必须引入 threading

  • 例子


import threading
import time

print("Start of program")


def takeANap():
    time.sleep(5)
    print('Wake Up')


threadObj = threading.Thread(target=takeANap)

threadObj.start()

print("End of program")

# 这样的话 5秒钟后执行takeANap

# 结果

# Start of program
# End of program
# Wake Up

向线程的目标函数传递参数


import threading
print("Gats", "Dogs", "Frogs", sep='&')

threadObj = threading.Thread(
    target=print, args=['Gats', 'Dogs', 'Frogs'], kwargs={'sep': '&'})

threadObj.start()


# 结果

# Gats&Dogs&Frogs

多线程一定要小心并发问题

多线程 当创建一个新的 Thread 对象时 要确保其目标函数只使用该函数中的局部变量,这将避免程序中的并发问题

从 Python 中启动其他程序

  • 可以利用 subprocess

  • 可以利用 Popen() 打开别的程序


import subprocess

subprocess.Popen('C:\\windows\\System32\\calc.exe')

# 这样就打开了计算器
# 判断继承是否运行

向 Popen()传递命令行参数


import subprocess

jisuanqi = subprocess.Popen(
    ['D:\Tools\EDIT\EditPlus.exe', 'C:\\hello.txt'])


jisuanqi.wait()


jisuanqi.poll()


# 结果

# 要是写两个的话 变成数组模式

# 专业昂他会打开记事本,然后在打开hello.txt文件

用 Python 打开网站

  • webbrowser

import webbrowser

webbrowser.open("https://www.baidu.com/")

# 结果

# 打开浏览器,输入www.baidu.com

文章作者: 雾烟云
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 雾烟云 !
  目录