استعراض قائمة الملفات في اي دليل باستخدام بايثون

أحب ادارة والعمل على ملفات النظام باستخدام لغة بايثون ولهذا ساقوم بمشاركة طريقة تمكنم من عرض محتويات اي دليل باستخدام  os.listdir.
واذا كانت لديكم اي طرية ارجوا ان تشاركونا اياها.
import os
dirlist=os.listdir('d:/')
from pprint import pprint
pprint(dirlist)>

النتيجة

['$Recycle.Bin',
 'Atlas2004.css',
 'autoexec.bat',
 'Config.Msi',
 'config.sys',
 'Documents and Settings',
 'files',
 'found.000',
 'hiberfil.sys',
 'history.js',
 'Intel',
 'IO.SYS',
 'MSDOS.SYS',
 'MSOCache',
 'pagefile.sys',
 'Partition Images',
 'PerfLogs',
 'Portable Python 3.2.1.1',
 'Program Files',
 'ProgramData',
 'Python34',
 'rb_config.js',
 'Recovery',
 'Restored Files',
 'System Volume Information',
 'Users',
 'Windows',
 'Windows.old',
 'xampp']

 

نظرة عامة حول الصفوف في بايثون Tuples

الصفوف tuples هي نوع أخر من البيانات في بايثون وهي تتكون أو تحتوي على مجموعة من القيم مفصولة بفواصل ودائما ما تكون بين قوسين وتكون قيمها ثابتة غير قابلة للتبديل أو التعديل أو حذف احد قيمها وهذا هو الفرق الذي بينها وبين القوائم  ويتم استخدام الصفوف في حالات واغراض مختلفة .
ويتم انشاء صفوف لا تحتوي على اي قيمة باستخدام زوجين من الأقواس كما يتم انشاء صفوف تحتوي على قيمة واحدة ولكن يجب اضافة فاصلة أخر تلك القيمة.امثلة عن الصفوف .

x = ()              # صف من دون أي قيمة
x = (0,)         # صف بقيمة واحد ولاحظ انه تنتهي بفاصلة
x = (0, 1, 2, "abc")       # صف تحتوي على 4 قيم
x = (0, 1, 2, 3, (1, 2))   # صف داخل صف
y = x[0]            # فهرسة القيم في الصفوف
y = x[4][0]                # فهرسة صف داخل صف
x = (0, 1) * 2             # تكرار الصف
x = (0, 1, 2) + (3, 4)     # الجمع بين صفين
for item in x: print item  # التكرار خلال الصفوف
b = 3 in x             # اختبار عضوية الصفوف

تحقق ما اذا كانت السلسلة عبارة عن رقم باستخدام str.isdigit

غالبا ما نحتاج لكي نتحقق من اي سلسلة في بايثون ما اذا كانت عبارة عن أرقام أم لا، وقد نحتاج اليها خاصة مع البرامج التي يكون فيها ادخال البيانات من طرف المستخدم أو من خلال جلب المعلومات من قواعد البيانات، واعتمادا على نوع الرقم الذي نتوفعه يمكننا استخدام عدة طرق مثل تحليل السلسلة بواسطة التعابير المنطقية او باستعمال خاصية التحويل .
الدالة التالية يمكن القول أنها من أسرع وأقوى طريقة للتحقق من اذا كانت السلسلة عبارة عن رقم أو عدد ، فهي تدعم str و اليونيكود وهي تعمل على بايثون 2 و3

وعند تجريب الكود نحصل على التالي :

 

التحقق من السلسة اذا كانت رقمية باستخدام الدالة المدمجة (str.isdigit)

كن متأكد انه عند استعمال الدالة  str.isdigit فانت تتاكد اذا كانت السلسة تحتوي على رقم بين “1 ” وليس قيمة رقمية 1

 

أكمل القراءة →

القيم المنطقية صحيح أو خطأ في بايثون

ماهي القيم المنطقية ؟

القيم المنطقية هما كائنين ثابتين صح أو خطأ.

ويتم استخدامها لتمثيل القيم الحقيقية (كما يمكن اعتبار القيم الأخرى كذلك بصح أو خطأ).

في
الحالات الرقمية (على سبيل المثال عندما تستخدم على نحو مدخلات argument
الى معامل حسابي) فسوف تتصرف مثل الاعداد الصحيحة 0 و 1 على التوالي .

الدالة المدمجة bool() يمكن استخدامها لتحويل اي قيمة الى قيمة منطقية اذا كانت تلك القيمة يمكن ان تقسر على أنها قيمة منطقية .

السلاسل المنطقية

السلاسل النصية في بايثون يمكن اختبارها كقيم منطقية لكي تعطينا نتيجة منطقية صح أو خطا.

دعونا نأخذ مثال من خلال انشاء متغير واعطاءه قيمة .

my_string = "Hello World"

my_string.isalnum()  #check if all char are numbers
my_string.isalpha()  #check if all char are alphabetic
my_string.isdigit()  #test if string contains digits
my_string.istitle()  #test if string contains title words
my_string.isupper()  #test if string contains upper case
my_string.islower()  #test if string contains lower case
my_string.isspace()  #test if string contains spaces
my_string.endswith('d')  #test if string endswith a d
my_string.startswith('H') #test if string startswith H


print my_string.isalnum()  #False
print my_string.isalpha()  #False
print my_string.isdigit()  #False
print my_string.istitle()  #True
print my_string.isupper()  #False
print my_string.islower()  #False
print my_string.isspace()  #False
print my_string.endswith('d')  #True
print my_string.startswith('H')  #True


 

جمع عناصر قائمتين لتشكيل قاموس بايثون

الناس تحب البرمجة باستخدام لغة البايثون لانها تساعد على حل أكثر المشاكل
التي تواجه المطورين والدالة zip() احدى هذه الحلول الني تسهل علينا بعض
الاشكالات .
cols = ['City','Country','ZipCode']
values = ['Paris','France','12345-12']
zipped = zip(cols ,values)
print zipped #prints [('City','Paris'),('Country','France'),('ZipCode','12345-12')]
dictionary = dict(zipped)#الأن سيتم تحويل القيمة zipped الى قاموس
print dictionary #prints {'City':'Paris','ZipCode','12345-12','Country':'France'}

وقد نحتاج الى هذه السيناريوهات مثل قراءة ملفات CVS حيث الصف الأول في الملف هو قائمة اسماء الأعمدة واللاحقة هي القيم
هذه خدعة بسيطة أرجوا ان تنال اعجابكم