Python如何处理文件的?

众所周知,Python是编程语言的一种,利用Python可以做很多的文件处理。那么Python如何处理文件的?有时,组织文件可能需要的不仅仅是了解其扩展名。例如,获取所有文件均为同一类型的目录。.pdf,.doc,.mp4等。假设您有一个包含幻灯片的文件夹(.ppt)。在这种情况下,您刚刚收到了大量的演讲文件,但要阅读它们并不容易。因此,他们没有为第一堂课准备一张包含所有内容的幻灯片,而是将它们分解为一个会议的幻灯片。在这种情况下,假定我们的文件夹如下所示。

Python如何处理文件的?_业界动态_数字化

 Python如何处理文件的?

DataStructures/

|_Datastructuressession1Slide1.ppt

|_Datastructuressession1Slide2.ppt

|_Datastructuressession1Slide3.ppt

|_Datastructuressession2Slide3.ppt

|_Datastructuressession7Slide8.ppt

|_Datastructuressession9Slide2.ppt

... and so on

发生了什么?我们把幻灯片放好了,但是一团糟。您将不得不在文件夹中浏览一份特定的幻灯片,该幻灯片从您刚刚阅读的位置开始。我们应该使它更容易些,让我们根据会议安排所有幻灯片。

还记得上一篇文章中我们如何生成随机文件吗?我们将做同样的事情,只是这一次,所有文件都是相同的类型。快来看看这里。我们的文件看起来很像create_random_files.py。

#!/bin/python3# create_lectures.pyimport osfrom pathlib import Path

sessions = [str(x) for x in range(1,21)] # create 20sessions

sessions = [str(0)+item if int(item) < 10 else item for item in sessions]# Datastructuressession01Slide1.ppt# get into the DataStructures directory

os.chdir('./DataStructures')for item in sessions:

# create 20 slides for each session

for num in range(21):

file_to_create = f"Datastructuressession{item}Slide{num}.ppt"

Path(file_to_create).touch()

好吧好吧。我承认这次我对文件的数量有些不满。那是相当数量。

让我们注意这一行:

sessions = [str(0)+item if int(item) < 10 else item for item in sessions]

在此之前的行列出了二十个数字,但这是要注意的问题,我们将这些数字中的每个数字转换为字符串。为什么?

如果确实小于10,我们会将数字0作为字符串附加到每个数字之后,这将使较低10范围内的每个数字看起来像这样;01、02、03等。

上面,我们为20个会话范围内的每个会话创建了许多文件。

接下来,我们很简单,根据会话将这些文件分组。

# clean_reading.py#!/bin/python3# move files to directories according to the file name patternimport osimport shutil# get into the Datastructures directory

os.chdir('./DataStructures')# Datastructuressession01Slide1.pptfor f in os.listdir("."):

folder_name = f[14:23]

# print(folder_name)

if not os.path.exists(folder_name):

os.mkdir(folder_name)

shutil.move(f, folder_name)

else:

shutil.move(f, folder_name)

可能需要解释的唯一一行是:

folder_name = f[14:23]

我们已经计算了想要以文件夹命名的名称种类的字符数。在这种情况下,我们分解了文件名的字符串

Datastructuressession01Slide1.ppt

从我们那里得到的第一个s会话是字符号14在整个字符串中,而最后一次会话计数将是字符编号23从我们生成的文件中翻译出来将意味着数字的最后一位 20。

运行此命令可使我们的所有幻灯片在各自的会话中快速,干净地进行。

人们还有很多想做的事情,比如说让程序知道在没有字符位置手动输入的情况下包括了哪些会话,但是存在更高级的工具,尤其是在UNIX环境下。

随意进行探索,找到最适合您的方法。请注意,这是一个使用python制作的很棒的GUI 分拣器。

以上即是关于Python如何处理文件的全部内容,想了解更多关于Python的信息,请继续关注。

41
96
0
63

相关资讯

  1. 1、运算放大器的基本应用盘点1392
  2. 2、位移传感器的分类以及应用介绍3237
  3. 3、三菱FX系列PLC共的时钟运算类指令4587
  4. 4、工业分离业务增幅超100%,三达膜高速增长引擎已重启?594
  5. 5、单片机系统的电磁兼容性设计讲解1948
  6. 6、发电机强行励磁的作用_发电机强行励磁的注意事项1979
  7. 7、怎样才能提高LED灯的使用寿命1159
  8. 8、使用CPLD和单片机结合实现无线传感器网络节点控制系统的设计2900
  9. 9、广州将打造全国领先的工业互联网生态枢纽2538
  10. 10、探讨模拟与数字麦克风灵敏度方面的差异3525
全部评论(0)
我也有话说
0
收藏
点赞
顶部