কঠিন হতে পারে না, তবে আমি একটি মানসিক ব্লক করছি।
কঠিন হতে পারে না, তবে আমি একটি মানসিক ব্লক করছি।
উত্তর:
একমুখী:
import os
os.listdir("/home/username/www/")
glob.glob("/home/username/www/*")
glob.globপদ্ধতি লুকানো ফাইল তালিকা প্রস্তুত করা যাবে উপরে।
যেহেতু আমি মূলত বহু বছর আগে এই প্রশ্নের উত্তর দিয়েছি, তাই পাথলিব পাইথনে যুক্ত হয়েছে। ডিরেক্টরিকে তালিকার জন্য এখন আমার পছন্দের উপায়টিতে সাধারণত জিনিসগুলির iterdirপদ্ধতি অন্তর্ভুক্ত থাকে Path:
from pathlib import Path
print(*Path("/home/username/www/").iterdir(), sep="\n")
['c:\\users']
glob.glob(r'c:\users\*')(বিশ্বব্যাপী এটি ডিরেক্টরিগুলি তালিকাভুক্ত করে না, তবে তারকাচিহ্নগুলি প্রসারিত করে এবং এটি একই ধরণের কার্য সম্পাদন করে)।
os.walk আপনার পুনরাবৃত্তি প্রয়োজন হলে ব্যবহার করা যেতে পারে:
import os
start_path = '.' # current directory
for path,dirs,files in os.walk(start_path):
for filename in files:
print os.path.join(path,filename)
glob.globবা os.listdirএটি করবে।
import globENTER glob.glob(r'c:\users')ENTER কেবল ফিরে আসবে বলে মনে হচ্ছে ['c:\\users']। কেন এমন? আমি glob.glob ব্যবহার করতে চাই কারণ অন্যান্য ব্যবহারকারীরা যেমন উল্লেখ করেছেন, এটি লুকানো ফাইলগুলি উপেক্ষা করার সময় এটি কোনও ডিরেক্টরিতে থাকা বিষয়বস্তুও প্রত্যাখ্যান করে। এটা গুরুত্বপূর্ণ.
glob:glob.glob(r'c:\users\*')
পাইথন ৩.৩ থেকে আপনি ব্যবহার করতে পারেন os.scandir ।
পার্থক্যটি হ'ল এটি ফাইলের এন্ট্রি নাম দেয় না returns উইন্ডোজের মতো কিছু ওএসে, এর অর্থ হ'ল os.path.isdir/fileএটি কোনও ফাইল কিনা এবং তা আপনাকে জানার দরকার নেই এবং এটি সিপিইউর সময় সাশ্রয় করে কারণstat উইন্ডোজে ডায়ার স্ক্যান করার ইতিমধ্যে সম্পন্ন হয়েছে:
max_valueবাইটের চেয়ে বড় একটি ডিরেক্টরি তালিকা এবং ফাইল মুদ্রণের উদাহরণ :
for dentry in os.scandir("/path/to/dir"):
if dentry.stat().st_size > max_value:
print("{} is biiiig".format(dentry.name))
(খনি বিস্তৃত কর্মক্ষমতা ভিত্তিক উত্তর পড়তে এখানে )
নীচে কোড ডিরেক্টরিতে এবং dir মধ্যে ফাইল তালিকাভুক্ত করবে। অন্যটি হ'ল ওসওয়াক
def print_directory_contents(sPath):
import os
for sChild in os.listdir(sPath):
sChildPath = os.path.join(sPath,sChild)
if os.path.isdir(sChildPath):
print_directory_contents(sChildPath)
else:
print(sChildPath)
.XYZইউনিক্স ফাইল-সিস্টেমের প্রসঙ্গে ফাইলগুলি বোঝাবেন) তালিকাভুক্ত করবেনglob.glob("/home/username/www/.*")?