如果不列出一个目录,并将要查找的项和目录中的每个项都转换为一个常见的案例进行比较,则无法执行此操作。文件系统是区分大小写的,这就是它的全部功能。def path_insensitive(path):

"""

Get a case-insensitive path for use on a case sensitive system.

>>> path_insensitive('/Home')

'/home'

>>> path_insensitive('/Home/chris')

'/home/chris'

>>> path_insensitive('/HoME/CHris/')

'/home/chris/'

>>> path_insensitive('/home/CHRIS')

'/home/chris'

>>> path_insensitive('/Home/CHRIS/.gtk-bookmarks')

'/home/chris/.gtk-bookmarks'

>>> path_insensitive('/home/chris/.GTK-bookmarks')

'/home/chris/.gtk-bookmarks'

>>> path_insensitive('/HOME/Chris/.GTK-bookmarks')

'/home/chris/.gtk-bookmarks'

>>> path_insensitive("/HOME/Chris/I HOPE this doesn't exist")

"/HOME/Chris/I HOPE this doesn't exist"

"""

return _path_insensitive(path) or path

def _path_insensitive(path):

"""

Recursive part of path_insensitive to do the work.

"""

if path == '' or os.path.exists(path):

return path

base = os.path.basename(path) # may be a directory or a file

dirname = os.path.dirname(path)

suffix = ''

if not base: # dir ends with a slash?

if len(dirname) < len(path):

suffix = path[:len(path) - len(dirname)]

base = os.path.basename(dirname)

dirname = os.path.dirname(dirname)

if not os.path.exists(dirname):

dirname = _path_insensitive(dirname)

if not dirname:

return

# at this point, the directory exists but not the file

try: # we are expecting dirname to be a directory, but it could be a file

files = os.listdir(dirname)

except OSError:

return

baselow = base.lower()

try:

basefinal = next(fl for fl in files if fl.lower() == baselow)

except StopIteration:

return

if basefinal:

return os.path.join(dirname, basefinal) + suffix

else:

return

python读取配置文件不更改大小写_Python不区分大小写的文件名?相关推荐

  1. python读取配置文件存在某配置_Python读取配置文件(config.ini)以及写入配置文件

    一.读取配置文件 我的目录如下,在config下有一个config.ini配置文件 配置文件内容# 定义config分组 [config] platformName=Android appPackag ...

  2. python读取配置文件存在某配置_Python读取ini配置文件的方式

    ConfigParser模块在python中用来读取配置文件,配置文件的格式跟windows下的ini配置文件相似,可以包含一个或多个节(section), 每个节可以有多个参数(键=值).使用的配置 ...

  3. python火狐配置文件_Python+Selenium中级篇之4-封装一个自己的类-浏览器引擎类/Python读取配置文件内容...

    封装一个自己的类-浏览器引擎类 前一篇文章我们知道了,如何去封装几个简单的Selenium方法到我们自定义的类,这次我们编写一个类,叫浏览器引擎类,通过更改一个字符串的值,利用if语句去判断和控制启动 ...

  4. python读取sqlserver数据库方法_SQLServer数据库之Python读取配置文件,并连接数据库SQL Server...

    本文主要向大家介绍了SQLServer数据库之Python读取配置文件,并连接数据库SQL Server,通过具体的内容向大家展现,希望对大家学习SQLServer数据库有所帮助. 用配置文件保存固定 ...

  5. python读取配置文件 ConfigParser

    python读取配置文件 ConfigParser Python 标准库的 ConfigParser 模块提供一套 API 来读取和操作配置文件. 配置文件的格式 a) 配置文件中包含一个或多个 se ...

  6. Python 读取配置文件常用几种方式

    我们在设计自动化测试框架的时候,经常使用到配置文件,而配置文件种类有很多,常见的配置文件格式有很多中:ini.yaml.xml.properties.txt.py等. 配置文件ini 虽然配置文件放置 ...

  7. python读取配置文件并添加字典中_Python如何使用ConfigParser读取配置文件

    在项目过程中,需要设置各种IP和端口号信息等,如果每次都在源程序中更改会很麻烦(因为每次都要重启项目重新加载配置信息),因此将需要修改的参数写在配置文件(或者数据库)中,每次只需修改配置文件,就可以实 ...

  8. python读取配置文件获取所有键值对_python笔记14-读取yaml配置文件(pyyaml)

    yaml简介 1.yaml [ˈjæməl]: Yet Another Markup Language :另一种标记语言.yaml 是专门用来写配置文件的语言,非常简洁和强大,之前用ini也能写配置文 ...

  9. python读取配置文件获取所有键值对_python读取配置文件 变量 ConfigParser模块

    Python 读取写入配置文件很方便,可使用内置的 configparser 模块 配置文件:config.ini [oppo] platformName = Android platformVers ...

最新文章

  1. 边缘计算架构_边缘计算到底是个什么技术?边缘计算硬件架构
  2. echarts设置折线图属性
  3. [CF544D]Destroying Roads_最短路_bfs
  4. 网站 服务器 用sqlite,sqlite服务器数据库
  5. 模型加速:WAE-Learning a Wavelet-like Auto-Encoder to Accelerate Deep Neural Networks
  6. python之修改pip为清华源
  7. 微信域名防红防屏蔽系统的原理 微信域名防屏蔽的注意点
  8. shell 第六次作业(grep正则、sed)
  9. centos7下永久修改hostname
  10. Java虚拟机类加载机制--类加载器详解
  11. RDkit:介绍smiles编码,smart编码及摩根指纹(ECFP)
  12. html单元格溢出,excel如何超出单元格显示
  13. 结合P2P软件使用Ansible分发大文件
  14. JAVA 图片格式转换 jpg、jpeg、png格式互转
  15. 计算机笔记--【Java设计模式】
  16. 贾立平太讨厌_《最强大脑》水哥微博致歉三遍对不起 网友:节目太虚假,真的追不下去了...
  17. Win10与苹果AirDrop(隔空投送)
  18. 联想如何打开计算机配置,联想电脑如何进入BIOS以及设置启动菜单
  19. python爬取下厨房每周最受欢迎菜谱
  20. 红米note3双网通丨标注:2015617_官方线刷包_救砖包_解账户锁

热门文章

  1. Python---获取div标签中的文字
  2. 【Linux】8_存储管理逻辑卷LVM
  3. LeetCode-数组-54. 螺旋矩阵
  4. 一篇非常有用的文章-《台湾清华彭明辉教授的研究生手册》
  5. 【LeetCode从零单排】No26.Remove Duplicates from Sorted Array
  6. 使用Skywalking实现全链路监
  7. solr4.2增量索引之同步(修改,删除,新增)--转载
  8. Diagram of Spring 3.0 module dependencies--转载
  9. graylog2 架构--转载
  10. Spring – Sending E-Mail Via Gmail SMTP Server With MailSender--reference