python如何获得屏幕尺寸

python如何获得屏幕尺寸

作者:Elara发布时间:2026-01-05阅读时长:0 分钟阅读次数:21

用户关注问题

Q
如何使用Python获取当前屏幕的宽度和高度?

我想知道如何用Python代码获取电脑屏幕的分辨率,比如屏幕的宽度和高度是多少。

A

使用Python获取屏幕分辨率的方法

可以使用Python中的Tkinter库来获取屏幕尺寸。通过创建一个Tkinter的根窗口对象,然后调用其winfo_screenwidth()和winfo_screenheight()方法,即可获得屏幕的宽度和高度。示例代码如下:

import tkinter as tk
root = tk.Tk()
width = root.winfo_screenwidth()
height = root.winfo_screenheight()
print(f'Screen width: {width}, Screen height: {height}')
root.destroy()
Q
有没有不依赖GUI库的方法能通过Python获取屏幕尺寸?

我希望用Python获取屏幕大小,但电脑上没有图形界面或Tkinter库,有没有其他方法可以实现?

A

使用其他库或系统命令获取屏幕尺寸

可以尝试使用Pygame库或者调用系统命令获取屏幕分辨率。比如,Pygame提供了获取显示信息的功能,示例代码:

import pygame
pygame.init()
info = pygame.display.Info()
print(f'Screen width: {info.current_w}, Screen height: {info.current_h}')
pygame.quit()

另外,也可以在Windows系统上调用系统命令或使用ctypes库访问Windows API获取屏幕尺寸。

Q
获取屏幕尺寸后如何动态调整Python程序中的窗口大小?

我已经知道如何获取屏幕分辨率,想让程序窗口根据屏幕大小自动调整尺寸,应该怎么做?

A

根据屏幕尺寸调整程序窗口大小

通过获取屏幕宽高之后,可以在创建窗口时设置窗口的大小参数,使窗口尺寸和屏幕成一定比例。以Tkinter为例,使用geometry()方法设置窗口大小,例如:

import tkinter as tk
root = tk.Tk()
width = root.winfo_screenwidth()
height = root.winfo_screenheight()
window_width = int(width * 0.8)
window_height = int(height * 0.8)
root.geometry(f'{window_width}x{window_height}')
root.mainloop()

这样可以使程序窗口占据屏幕的80%。