pythonでフルパスからファイル名を抜き出すサンプルを紹介します。
folder1/folder2/test.txt → test.txt みたいなイメージです。
fullPaeh = '/RootFolder/Childfolder/GroundChildFolder/target.txt'
fileName = fullPaeh[fullPaeh.rfind('/') + 1:]
print(fileName) # 出力結果:target.txt
rfind関数は、文字列中に引数で渡された文字列があるかを判定し、存在する場合は、その文字列が出現するインデックスを返します。
pythonでは他の多くのプログラムと同じように1文字目を0として扱うので、そこは注意が必要です。(※)
ちなみに、rfindで指定の文字列が見つからない場合は、-1を返します。
したがって、上記のサンプルだと「/」が見つからない場合はそのままフルパスを返すことになります。
ここはプログラムの仕様によって適切にエラーハンドリングしてください。
※
なぜ配列のインデックスは0から始まるのか?
一言でいうと、その方がコンピュータの構造に合っているからということになります。
配列の先頭は確保されたメモリのポインタが格納されています。
それ以降は、「先頭から何個ずれているか」を示しているようです。
例えば、2番目だったら先頭から1つずれているから、array[1]でアクセスできるというわけです。
こうすることで、先頭のポインタだけ覚えていれば後はそこからいくつずれるかを指定するだけで、求める配列の位置が特定できるわけですね。
コンピュータが扱いやすくするために0から始まっていて、そのために人間には直感的に理解しにくいようなルールになっているということみたいです。
なぜ配列は0からなの? | ソララボ アンテナ