关键词:读取文件夹、读取文件、操作系统、设置壁纸、移动文件

预期实现如下几个步骤

1、获取指定文件夹内所有图片名

2、随机取一张图片设置为壁纸

3、设置为壁纸的图片移动到另外一个文件夹中

第一步,获取指定文件夹内所有图片名

  C盘background有两个文件夹,now文件夹存放是预备设置为壁纸的图片,ok文件夹存放已经设置为壁纸的图片

  

获取文件夹内所有图片需要导入os库,代码如下

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

import os

filePath = 'C:\\background\\'
test = os.listdir(filePath+"now\\")

打印test数列

第二部,随机取值,从获取的图片名称列表中随机取出一个值,设置为壁纸,需要导入random库,代码如下

image_path = random.choice(test)
setWallpaper(filePath+"now\\"+image_path)

定义的设置为壁纸的方法,上方代码中的setWallpaper

def setWallpaper(image_path):
key = win32api.RegOpenKeyEx(win32con.HKEY_CURRENT_USER,"Control Panel\\Desktop",0,win32con.KEY_SET_VALUE)
win32api.RegSetValueEx(key, "WallpaperStyle", 0, win32con.REG_SZ, "2")
win32api.RegSetValueEx(key, "TileWallpaper", 0, win32con.REG_SZ, "0")
win32gui.SystemParametersInfo(win32con.SPI_SETDESKWALLPAPER,image_path, 1+2)

第三步,将设置好的图片移动到其他文件夹内,需要导入shutil库

shutil.move(filePath+"now\\"+image_path, filePath+"ok\\")

如此,实现了开头的1/2/3步骤,串起来整个脚本如下,可放在桌面上,壁纸看腻了,点一下就切换了,换个思路,可以从网上直接取图设置壁纸也是可行的

# -*- coding: utf-8 -*-
import win32api
import win32con
import win32gui
import os
import random
import shutil #设置图片为桌面背景,参考地址https://blog.csdn.net/zwvista/article/details/18655
def setWallpaper(image_path):
key = win32api.RegOpenKeyEx(win32con.HKEY_CURRENT_USER,"Control Panel\\Desktop",0,win32con.KEY_SET_VALUE)
win32api.RegSetValueEx(key, "WallpaperStyle", 0, win32con.REG_SZ, "2")
win32api.RegSetValueEx(key, "TileWallpaper", 0, win32con.REG_SZ, "0")
win32gui.SystemParametersInfo(win32con.SPI_SETDESKWALLPAPER,image_path, 1+2) #获取指定目录下所有文件名称,参考地址https://blog.csdn.net/zhuzuwei/article/details/79925562
filePath = 'C:\\background\\'
test = os.listdir(filePath+"now\\") #从获取的图片名称列表中随机取出一个值,设置为壁纸,随机取值参考https://blog.csdn.net/weixin_39791387/article/details/84958436?utm_medium=distribute.pc_relevant_download.none-task-blog-baidujs-1.nonecase&depth_1-utm_source=distribute.pc_relevant_download.none-task-blog-baidujs-1.nonecase
image_path = random.choice(test)
setWallpaper(filePath+"now\\"+image_path) #将设置好的图片移动到其他文件夹内,参考https://blog.csdn.net/silentwolfyh/article/details/74931123
shutil.move(filePath+"now\\"+image_path, filePath+"ok\\") print("设置成功")

python读取文件夹内所有图片名称,随机设置为桌面壁纸且把设置后的图片移到其他文件夹内的方法的更多相关文章

  1. python爬虫-抓取acg12动漫壁纸排行设置为桌面壁纸

    ACG-wallpaper 初学python,之前想抓取P站的一些图片来着,然后发现acg12这里有专门的壁纸榜单,就写了个抓取壁纸作为mac桌面壁纸玩玩. 功能:抓取acg12壁纸榜单的动漫壁纸,并 ...

  2. 一个有意思的Python小程序(全国省会名称随机出题)

    本文为作者原创,转载请注明出处(http://www.cnblogs.com/mar-q/)by 负赑屃 最近比较迷Python,仿照<Python编程快速上手>8.5写了一个随机出卷的小 ...

  3. Python实用案例,Python脚本,Python实现每日更换“必应图片”为“桌面壁纸”

    往期回顾 Python实现自动监测Github项目并打开网页 Python实现文件自动归类 Python实现帮你选择双色球号码 前言: 今天我们就利用python脚本实现每日更换"必应图片& ...

  4. python批量修改一个文件夹下含多个文件夹中的所有图片名称

    网上能找到的,大多是只对一个文件夹下所有图片进行重命名的代码. 这边实现的是,一个文件夹下有多个文件夹内图片的重命名. rename.py #!/usr/bin/python # -*- coding ...

  5. Python读取不同文件夹下的图片并且分类放到新创建的训练文件夹和标签文件夹

    在深度学习的训练时,经常会碰到训练的样本数据集和标签数据集是在一个文件夹中,这个时候我们就不得不进行一些数据的预处理和文件的分类,例如将训练(training data)数据集和标签数据集(label ...

  6. python操作txt文件中数据教程[3]-python读取文件夹中所有txt文件并将数据转为csv文件

    python操作txt文件中数据教程[3]-python读取文件夹中所有txt文件并将数据转为csv文件 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献 python操作txt文件中 ...

  7. Windows下对文件夹下所有图片批量重命名(附C++,python,matlab代码)

    https://blog.csdn.net/u011574296/article/details/72956446: Windows下对文件夹下所有图片批量重命名(附C++,python,matlab ...

  8. Python爬虫之爬取站内所有图片

    title date tags layut Python爬虫之爬取站内所有图片 2018-10-07 Python post 目标是 http://www.5442.com/meinv/ 如需在非li ...

  9. Python读取和写入文件

    1 从文件中读取数据 1.1 读取整个文件 创建名为test的txt文本文件,添加内容如下所示: 123456789023456789013456789012 实现代码: with open('tes ...

  10. matlab遍历文件夹下所有图片和遍历所有子文件夹下图片

    做图像处理实验,经常需要遍历当前文件下所有图片.matlab当然很早就考虑了这个问题,库函数dir就是完成这个工作的.函数返回的是一个存放所有目录下文件信息的结构体,通过遍历结构体就可以达到访问所有文 ...

随机推荐

  1. wireshark抓包学习

    ip 过滤 ip.src_host ip.dst_host ip.addr mac 过滤 eth.src eth.dst eth.addr 端口过滤 tcp.port tcp.srcport tcp. ...

  2. rust体验感受,Rust标准库需要还需加强

    了解到Rust的跨平台编译和安全性,尝试用rust写一个http调用的程序,换了几个http client库都失败了,感觉rust语言还有较大的进步空间. 环境 OS: windows 11 rust ...

  3. Django项目实战:从安装到启动服务

    Django项目实战:从安装到启动服务 安装Django 首先,确保你已经安装了 Python 和 pip.然后,使用以下命令来安装 Django : pip install django 安装成功后 ...

  4. startup文件中 bash_profile 和 bashrc 区别的总结

    原理上讲"交互式,登陆shell"启动时会加载"profile"系列的startup文件"交互式,非登陆shell"启动时会加载" ...

  5. 三种方式从jdbc中获取数据库表字段信息

    一.整体代码 1.method1:执行select语句获取,select * from dims where 1 = 2 2.method2:执行show create table获取,show cr ...

  6. Flink监控看板Dashboard解析

    一. 二.常见问题排查 1.数据反压 背压(Backpressure)机制排查 点击JobName 点击某个算子 点击Backpressure查看,状态为HIGH时,则存在数据反压问题 注:若流程为A ...

  7. 5. Docker 本地镜像发布到阿里云

    5. Docker 本地镜像发布到阿里云 @ 目录 5. Docker 本地镜像发布到阿里云 1. 本地镜像发布到阿里云流程 最后: 1. 本地镜像发布到阿里云流程 镜像的生成方法: 基于当前容器创建 ...

  8. mybatis之增删改查

    核心配置文件中配置数据库连接及注册mapper.xml mapper.xml用来编写执行的sql(namespace为对应的接口类,标签id为接口类中的方法名) User为实体对象类 UserDao为 ...

  9. 『Python底层原理』--Python对象系统探秘

    Python是一种非常灵活的编程语言,它的灵活性很大程度上来自于它的对象系统. 在Python中,一切都是对象,这意味着无论是数字.字符串,还是我们自己定义的类的实例,它们在底层都遵循相同的规则. 本 ...

  10. C语言的头文件包含,竟存在这么多知识点!

    文章来自:https://zhuanlan.zhihu.com/p/472808057 相关文章连接:头文件包含是可以嵌套的_[C语言]- 预处理指令3 - 文件包含! 很多事不深入以为自己懂了,但真 ...