سؤال

نظرًا لعدم وجود كتابة صريحة في لغة بايثون، أريد أن أكون قادرًا على التمييز بين التسلسلات وغير التسلسلات باستخدام اصطلاح التسمية.لقد قمت بالبرمجة باستخدام لغة بايثون منذ فترة قصيرة، وما زلت لم أجد أي طريقة منطقية/عملية لتسمية التسلسلات.بالطبع مررت بالشهيرة بيب8, ، وأجريت بعض الأبحاث على جوجل، ويبدو أن التقليد المقبول هو إضافة الحرف "s" في نهاية اسم المتغير.

لنفترض أن لدينا سلسلة من "قيم الوزن"، وبالتالي يجب أن يكون اسم المتغير للتسلسل الأوزان.هذا جيد حتى الآن، ولكن ستكون هناك حالات تنتهي فيها بعض الكلمات بـ "s" وتكون الطريقة الأكثر منطقية لتسمية متغير ليس تسلسلًا.أو لنفترض أن لديك تسلسلات من الأوزان مخزنة في تسلسل.سوف يقوم اصطلاح التسمية "s" بتسمية المتغير الأوزان, ، وهو قبيح.أنا متأكد من أن هناك اصطلاح تسمية أفضل للتسلسلات.

ما هي اصطلاح التسمية للتسلسلات التي تنصح بها؟

هل كانت مفيدة؟

المحلول

في عام، تجنب هذا النوع من السلوك. إشعار من PEP8

<اقتباس فقرة>   

ووالاتساق الحماقة هو العفريت   عقول صغيرة

وهذا بالضبط ما استدعاء weightss متغير سوف تفعل. في ذلك العام أن يكون المتغيرات الخاصة بك تصف ما هي عليه، وليس وفقا لبعض اصطلاح التسمية:

weights = [44, 66, 88]
weight_groups = [[44, 66, 88], ...]

وغيرها.

ومن نفس القسم من PEP8 :

<اقتباس فقرة>   

ولكن الأهم من ذلك: معرفة متى تكون   غير متناسقة - في بعض الأحيان أسلوب   دليل فقط لا ينطبق. عندما تكون في   شك، استخدم حكمك. نظرة   في أمثلة أخرى وتقرر ما   يبدو أفضل. وعدم التردد في   نسأل!

نصائح أخرى

سوف يقوم اصطلاح التسمية "s" بتسمية المتغير الأوزان، وهو أمر قبيح.أنا متأكد من أن هناك اصطلاح تسمية أفضل للتسلسلات.

أعتقد أن الاصطلاح الذي تصفه يُقصد به تفسيره على أنه "كلما كان لديك قائمة بشيء ما، وضح أنها قائمة من خلال جمعها".على سبيل المثال، إذا كانت لديك قائمة بمثيلات العشب، فيمكنك الاتصال بهذا grasses, ، لا grasss.لا أعتقد أنه من المفترض أن تؤخذ بالمعنى الحرفي للكلمة كما تأخذها أنت.

ينصحك PEP دائمًا باتباع النهج الخاص بك إذا كان ذلك أكثر قابلية للقراءة وإفادة.مثل ذكر علي, ، أحد المبادئ التوجيهية لـ PEP هو أنه لا ينبغي أن تقع فريسة للاتساق الحمقاء.

ومهما كنت القلب قليلا يرغب ....

والمزاح فقط، ولكن أنا لا تحصل على التعلق على ذلك. إذا كانت قبيحة، أن تفعل شيئا لجعلها أكثر قابلية للقراءة مثل seq_weight وseq_weights

لماذا لا مجرد thing_list أو thing_seq؟

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top