Je voudrais établir un bon schéma de nommage pour les quantités physiques/mathématiques utilisées dans mon code de simulation. Prenons l'exemple suivant:nommer des quantités physiques en python
from math import *
class GaussianBeamIntensity(object):
"""
Optical intensity profile of a Gaussian laser beam.
"""
def __init__(self, intensity_at_waist_center, waist_radius, wavelength):
"""
Arguments:
*intensity_at_waist_center*: The optical intensity of the beam at the
center of its waist in W/m^2 units.
*waist_radius*: The radius of the beam waist in meters.
*wavelength*: The wavelength of the laser beam in meters.
"""
self.intensity_at_waist_center = intensity_at_waist_center
self.waist_radius = waist_radius
self.wavelength = wavelength
self._calculate_auxiliary_quantities()
def _calculate_auxiliary_quantities(self):
# Shorthand notation
w_0, lambda_ = self.waist_radius, self.wavelength
self.rayleigh_range = pi * w_0**2/lambda_
# Generally some more quantities could follow
def __call__(self, rho, z):
"""
Arguments:
*rho*, *z*: Cylindrical coordinates of a spatial point.
"""
# Shorthand notation
I_0, w_0 = self.intensity_at_waist_center, self.waist_radius
z_R = self.rayleigh_range
w_z = w_0 * sqrt(1.0 + (z/z_R)**2)
I = I_0 * (w_0/w_z)**2 * exp(-2.0 * rho**2/w_z**2)
return I
Quel schéma de nommage cohérent proposeriez-vous pour les propriétés physiques (propriétés, arguments de fonction, etc.) afin d'équilibrer entre lisibilité et notation concise (que les formules restent relativement courtes)? Pourriez-vous s'il vous plaît affiner l'exemple ci-dessus? Ou peut-être proposer un meilleur régime?
Il serait bon de suivre les directives de PEP8, en se souvenant que "Une cohérence insensée est le Hobgoblin des petits esprits". Il semble difficile de s'en tenir à des noms descriptifs tout en respectant la limite traditionnelle de 80 caractères pour les longueurs de ligne.
Merci d'avance!
Quelle valeur avez-vous * vraiment * obtenir de la limite de 80 caractères en tout cas? Ce n'est pas comme si vous allez envoyer votre code dans un e-mail aux années 1980 –
@Klaus: 80 limite de char est bien cependant; par exemple, il peut y avoir plus de fichiers ouverts sur l'écran et ne pas avoir à accepter une ligne vraiment longue qui occupe un tas d'écrans. (Par exemple, en ce moment dans xmonad sur mes deux écrans, j'ai environ 12 fenêtres carrelées, la plupart avec le code de recadrage à ~ 90 caractères ou plus.) –
@jimbob Je vois votre point de vue, mais j'utilise un IDE. –