用Python编写一个每天都在系统下新建一个文件夹的脚本

yipeiwu_com5年前Python基础

这个程序的功能非常的简单,就是每天在系统中新建一个文件夹。文件夹即当前的时间。此代码是在同事那边看到的,为了锻炼下自己薄弱的Python能力,所以花时间重新写了一个。具体代码如下:

import time,os
 basePath = 'F:\\work\\'
 thisYear = str(time.localtime()[0])
 thisMonth = str(time.localtime()[1])
 thisDay = time.strftime("%Y-%m-%d", time.localtime())
 yearPath = basePath + thisYear
 monthPath = basePath + thisYear + '\\' +thisMonth
 dayPath = basePath + thisYear + '\\' +thisMonth + '\\' + thisDay
 if not os.path.exists(yearPath):
   os.mkdir(yearPath)
 if not os.path.exists(monthPath):
   os.mkdir(monthPath)
 if not os.path.exists(dayPath):
   os.mkdir(dayPath)
 os.popen("explorer.exe" + " " + dayPath)
 os.popen("exit")

刚开始写的时候我使用的os.system()来调用windows程序,但发现每次执行是都会弹出一个python窗口,很是麻烦。问了下高人,说解决方案是把.py文件后缀改为.pyw后缀即可。但是试了下还是不行。在高人的指导下,才得知原来值需要将os.system()修改为os.popen()即可。

.py和.pyw有什么不同?

严格来说,它们之间的不同就只有一个:视窗运行它们的时候调用不同的执行档案。视窗用python.exe 运行.py ,用pythonw.exe 运行.pyw 。这纯粹是因为安装视窗版Python 时,扩展名.py 自动被登记为用python.exe 运行的文件,而.pyw 则被登记为用pythonw.exe 运行。.py 和.pyw 之间的“其它差别”全都是python.exe 和pythonw.exe 之间的差别。

跟 python.exe 比较起来,pythonw.exe 有以下的不同:

  •     执行时不会弹出控制台窗口(也叫 DOS 窗口)
  •     所有向原有的 stdout 和 stderr 的输出都无效
  •     所有从原有的 stdin 的读取都只会得到 EOF

.pyw 格式是被设计来运行开发完成的纯图形界面程序的。纯图形界面程序的用户不需要看到控制台窗口。开发纯图形界面程序的时候,你可以暂时把.pyw 改成 .py ,以便运行时能调出控制台窗口,看到所有错误信息。

os.system()和os.popen()有什么不同?

  •     os.system(command)  在一个子shell中运行command命令,并返回command命令执行完毕后的退出状态。这实际上是使用C标准库函数system()实现的。这个函数在执行command命令时需要重新打开一个终端,并且无法保存command命令的执行结果。
  •     os.popen(command,mode)  打开一个与command进程之间的管道。这个函数的返回值是一个文件对象,可以读或者写(由mode决定,mode默认是'r')。如果mode为'r',可以使用此函数的返回值调用read()来获取command命令的执行结果。

相关文章

Python实现登录接口的示例代码

Python实现登录接口的示例代码

之前写了Python实现登录接口的示例代码,最近需要回顾,就顺便发到随笔上了 要求: 1.输入用户名和密码 2.认证成功,显示欢迎信息 3.用户名3次输入错误后,退出程序 4....

python黑魔法之编码转换

我们在使用其他语言的库做编码转换时,对于无法理解的字符,通常的处理也只有两种(或三种): 抛异常 替换成替代字符 跳过 但是在复杂的现实世界中,由于各种不靠谱,我们...

Python入门之三角函数tan()函数实例详解

描述 tan() 返回x弧度的正弦值。 语法 以下是 tan() 方法的语法: import math math.tan(x) 注意:tan()是不能直接访问的,需要导入 m...

Python读写Redis数据库操作示例

使用Python如何操作Redis呢?下面用实例来说明用Python读写Redis数据库。比如,我们插入一条数据,如下:复制代码 代码如下:import redisclass Datab...

python: line=f.readlines()消除line中\n的方法

python: line=f.readlines()消除line中\n的方法

测试代码 #!/ust/bin/env python3 f = open("name.txt") date = f.readlines() print(date) f.close(...