print/list python 中 OS.Walk 只有 5 个条目
print/list only 5 entries from OS.Walk in python
我的目标 - 使用 OS 步行时仅列出 5 个条目。到目前为止,我只能获得使用 OS.Walk 找到的所有内容的列表,或者只能列出一个条目。 (通过使用 return 函数)
我的代码:
进口 os
导入子进程
def playmusic(name):
for root, dirs, files in os.walk('E:\', followlinks=True):
for file in files:
if name in file:
vlc='C:/Program Files/VideoLAN/VLC/vlc.exe'
music=str(os.path.join(root,file))
print(music)
#subprocess.Popen([vlc, music])
#return
print("Finish")
input()
try:
s=raw_input("name: ")
playmusic(s)
except Exception as e:
print(e)
print("Error")
结果:
=== RESTART: C:\Users\VGMPC2\Documents\testing scripts\search and print.py ===
name: test
E:\Nes\Jordan Vs Bird Point Contest.mp4
E:\Nes\Jordan Vs Bird\Slam Dunk Contest.mp4
E:\playlist\Action&Adventuretest.xspf
E:\playlist\schedule test 2.xspf
E:\Snes\Lufia II\The Greatest Thieves.mp4
E:\Symbolic playlists\Nintendo Generation Point Contest.mp4
E:\Symbolic playlists\Nintendo Generation\Slam Dunk Contest.mp4
Finish
如果有任何方法只显示 5 个而不是整个列表,那就太好了!我尝试使用 len() 但我无法弄清楚如何在 os 步行搜索中使用它。
我想说最重要的是 music=str(os.path.join(root,file))
,因为我相信搜索就是这样。
如有任何想法,我们将不胜感激。谢谢你的时间,
试试这个:
def playmusic(name):
for root, dirs, files in os.walk('E:\', followlinks=True):
for file in files[0:5]: #You show the first five only
if name in file:
vlc='C:/Program Files/VideoLAN/VLC/vlc.exe'
music=str(os.path.join(root,file))
print(music)
#subprocess.Popen([vlc, music])
#return
print("Finish")
input()
try:
s=raw_input("name: ")
playmusic(s)
except Exception as e:
print(e)
print("Error")
我的目标 - 使用 OS 步行时仅列出 5 个条目。到目前为止,我只能获得使用 OS.Walk 找到的所有内容的列表,或者只能列出一个条目。 (通过使用 return 函数)
我的代码: 进口 os 导入子进程
def playmusic(name):
for root, dirs, files in os.walk('E:\', followlinks=True):
for file in files:
if name in file:
vlc='C:/Program Files/VideoLAN/VLC/vlc.exe'
music=str(os.path.join(root,file))
print(music)
#subprocess.Popen([vlc, music])
#return
print("Finish")
input()
try:
s=raw_input("name: ")
playmusic(s)
except Exception as e:
print(e)
print("Error")
结果:
=== RESTART: C:\Users\VGMPC2\Documents\testing scripts\search and print.py ===
name: test
E:\Nes\Jordan Vs Bird Point Contest.mp4
E:\Nes\Jordan Vs Bird\Slam Dunk Contest.mp4
E:\playlist\Action&Adventuretest.xspf
E:\playlist\schedule test 2.xspf
E:\Snes\Lufia II\The Greatest Thieves.mp4
E:\Symbolic playlists\Nintendo Generation Point Contest.mp4
E:\Symbolic playlists\Nintendo Generation\Slam Dunk Contest.mp4
Finish
如果有任何方法只显示 5 个而不是整个列表,那就太好了!我尝试使用 len() 但我无法弄清楚如何在 os 步行搜索中使用它。
我想说最重要的是 music=str(os.path.join(root,file))
,因为我相信搜索就是这样。
如有任何想法,我们将不胜感激。谢谢你的时间,
试试这个:
def playmusic(name):
for root, dirs, files in os.walk('E:\', followlinks=True):
for file in files[0:5]: #You show the first five only
if name in file:
vlc='C:/Program Files/VideoLAN/VLC/vlc.exe'
music=str(os.path.join(root,file))
print(music)
#subprocess.Popen([vlc, music])
#return
print("Finish")
input()
try:
s=raw_input("name: ")
playmusic(s)
except Exception as e:
print(e)
print("Error")