63805


python3でリストからIDを読み込んで、パスを取得するコードを作成しました  
（フォルダ上でのファイルの有無を確認するため）

[code]

    import glob
    import re
    import os
    
    f = open('myList.txt', 'r')
    for line in f:
    
      myPath=r"\\12.345.67.89\AA\BB"
      text=r"{}\{}\*MYID\*.pdf"
      result=text.format(myPath,line.rstrip('\n'))
      l = glob.glob(result)
      print(l)
    
    f.close
    
[/code]

リストはmyList.txtというファイルで  
A11122  
B22222  
C12345  
とIDを記載しています

これを以下のように変更して、ファイル名だけでなく、ファイルの変更日時も取得したいのですが上手くいきません。どこを修正したらよいか教えていただけないでしょうか。よろしくお願いいたします。OSはWindows10です

[code]

    import glob
    import re
    import os
    
    f = open('myList.txt', 'r')
    for line in f:
    
      myPath=r"\\12.345.67.89\AA\BB"
      text=r"{}\{}\*MYID\*.pdf"
      result=text.format(myPath,line.rstrip('\n'))
      l = glob.glob(result)
      for x in glob.glob(result)
      print(os.path.getmtime(l))
    
    f.close
    
[/code]


CC BY-SA 4.0
2020-03-13T02:53:50.893
63799
2020-03-13T07:06:31.567
9807
question
python
pythonでリストを読み込んでファイルを検索し、変更日時を取得したい


手元のpython3.6環境でサンプルコードのように書き換えると正常に動作しました。(ファイルサーバが原因と限らないので、とりあえずローカル環境にしています)  
下記を見直してもエラーが出る場合は、質問にエラーメッセージの追記をお願いします。

  * `for x...`のネストができていない
  * for文の中で`x`を使わずに配列`l`を渡している

[code]

    # -*- coding: utf-8 -*-
    import glob
    import re
    import os
    from datetime import datetime
    
    f = open('myList.txt', 'r')
    for line in f:
    
      myPath=r"test" 
      text=r"{}\{}\*MYID\*.pdf" 
      result=text.format(myPath,line.rstrip('\n'))
      l = glob.glob(result)
      l = glob.glob(result)
      for x in glob.glob(result):
        print(os.path.getmtime(x))
        print(datetime.fromtimestamp(os.path.getmtime(x)).strftime('%Y-%m-%d %H:%M:%S'))
    
    f.close
    
[/code]


CC BY-SA 4.0
2020-03-13T07:06:31.567
63805
2020-03-13T07:06:31.567
9820
63799
answer