实际案例
某文件系统目录下有一系列文件:
quicksort.c
graph.py
heap.java
install.sh
stack.cpp
……
编写程序给其中所有.sh文件和.py文件加上用户可执行权限。
解决方案:使用字符串的str.startswith()和str.endswith()方法。(注:多个匹配时参数使用元组。)其具体代码如下:
# -*- coding: utf-8 -*-
import os, stat
# 读入当前文件目录下的所有文件并通过列表解析读取指定文件至列表
files_list = [name for name in os.listdir('.') if name.endswith(('.sh', '.py'))]
# 修改文件权限
for file in files_list:
os.chmod(file, os.stat(file).st_mode | stat.S_IXUSR)
此实际案例适用于Linux系统,故此不展示上述代码运行结果。