Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将一个文件中的前14个字符与另一个文件中的前14个字符匹配?_Python_Python 2.7_Glob - Fatal编程技术网

Python 将一个文件中的前14个字符与另一个文件中的前14个字符匹配?

Python 将一个文件中的前14个字符与另一个文件中的前14个字符匹配?,python,python-2.7,glob,Python,Python 2.7,Glob,我希望最终结果是python打印所有文件名与daily_uu.bin文件匹配的daily_uu.ctl文件。我将专门在每日的.ctl文件上执行代码,我想看看是否有更简单的方法来循环遍历每个ctl文件,以显示哪些文件具有匹配的二进制文件,而不是我自己查看每个文件。只有部分daily_uxTl.ctl文件的前14个字符将具有与前14个字符相同的匹配daily_xTl.bin文件。这些是我需要打印的ctl_文件。我是一个python新手,所以我不知道如何开始,我只是将python作为ArcGis项目的

我希望最终结果是python打印所有文件名与daily_uu.bin文件匹配的daily_uu.ctl文件。我将专门在每日的.ctl文件上执行代码,我想看看是否有更简单的方法来循环遍历每个ctl文件,以显示哪些文件具有匹配的二进制文件,而不是我自己查看每个文件。只有部分daily_uxTl.ctl文件的前14个字符将具有与前14个字符相同的匹配daily_xTl.bin文件。这些是我需要打印的ctl_文件。我是一个python新手,所以我不知道如何开始,我只是将python作为ArcGis项目的一部分来使用。我使用的是PythonShell 2.7.14

您可以在
上拆分,并保留第一个元素以有效地删除扩展。然后检查ctl中的哪个文件名在bin中

>>> import glob
>>> import os
>>> ws = r'C:\Users\maddy\Documents\20200506\CFSv2\pp'
>>> os.chdir(ws)

>>> ctl_files = glob.glob("daily_*.ctl")
>>> ctl_files
['daily_20200512.ctl', 'daily_20200519.ctl', 'daily_20200526.ctl', 'daily_20200602.ctl', 'daily_20200609.ctl', 'daily_20200616.ctl', 'daily_20200623.ctl', 'daily_20200630.ctl', 'daily_20200707.ctl', 'daily_20200714.ctl', 'daily_20200721.ctl', 'daily_20200728.ctl', 'daily_20200804.ctl', 'daily_20200811.ctl', 'daily_20200818.ctl', 'daily_20200825.ctl', 'daily_20200901.ctl']
>>> bin_files = glob.glob("daily_*.bin")
>>> bin_files
['daily_20200421.bin', 'daily_20200428.bin', 'daily_20200505.bin', 'daily_20200512.bin', 'daily_20200519.bin', 'daily_20200526.bin', 'daily_20200602.bin', 'daily_20200609.bin', 'daily_20200616.bin', 'daily_20200623.bin', 'daily_20200630.bin', 'daily_20200707.bin', 'daily_20200714.bin', 'daily_20200721.bin', 'daily_20200728.bin', 'daily_20200804.bin', 'daily_20200811.bin', 'daily_20200818.bin', 'daily_20200825.bin', 'daily_20200901.bin']

您可以在
上拆分,并保留第一个元素以有效地删除扩展。然后检查ctl中的哪个文件名在bin中

>>> import glob
>>> import os
>>> ws = r'C:\Users\maddy\Documents\20200506\CFSv2\pp'
>>> os.chdir(ws)

>>> ctl_files = glob.glob("daily_*.ctl")
>>> ctl_files
['daily_20200512.ctl', 'daily_20200519.ctl', 'daily_20200526.ctl', 'daily_20200602.ctl', 'daily_20200609.ctl', 'daily_20200616.ctl', 'daily_20200623.ctl', 'daily_20200630.ctl', 'daily_20200707.ctl', 'daily_20200714.ctl', 'daily_20200721.ctl', 'daily_20200728.ctl', 'daily_20200804.ctl', 'daily_20200811.ctl', 'daily_20200818.ctl', 'daily_20200825.ctl', 'daily_20200901.ctl']
>>> bin_files = glob.glob("daily_*.bin")
>>> bin_files
['daily_20200421.bin', 'daily_20200428.bin', 'daily_20200505.bin', 'daily_20200512.bin', 'daily_20200519.bin', 'daily_20200526.bin', 'daily_20200602.bin', 'daily_20200609.bin', 'daily_20200616.bin', 'daily_20200623.bin', 'daily_20200630.bin', 'daily_20200707.bin', 'daily_20200714.bin', 'daily_20200721.bin', 'daily_20200728.bin', 'daily_20200804.bin', 'daily_20200811.bin', 'daily_20200818.bin', 'daily_20200825.bin', 'daily_20200901.bin']