wiki@my.terrot.net

Wiki@my.terrot.net is a service provided by Terrot.Net a company of the Terrot Research & Services Group.

Outils pour utilisateurs

Outils du site


python

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
python [2019/08/09 18:50] – [Fundamental Rules] francoispython [2019/09/10 16:52] (Version actuelle) francois
Ligne 88: Ligne 88:
 **In any case, Keep it simple**  **In any case, Keep it simple** 
 </note> </note>
 +
 +== RUL_GEN_005 Guru rule==
 +
 +Do what I say, Don't do what I do.
  
 ===== Comment Rules ===== ===== Comment Rules =====
Ligne 106: Ligne 110:
 ===== Coding Rules =====  ===== Coding Rules ===== 
 == RUL_COD_001 : Python version == == RUL_COD_001 : Python version ==
-Python 3.is the preferred Python version. If Python2 is required use Python 2.7.<latest>\\+Python 3.is the preferred Python version. If Python2 is required use Python 2.7.<latest>\\
  
  
Ligne 127: Ligne 131:
  
 == RUL_WRI_003 : Activate future features (Python2 only) == == RUL_WRI_003 : Activate future features (Python2 only) ==
-Make your Python2 code compliant with Python3 by inserting at least : 
  
-  from __future__ import unicode_literals+Make your Python2 code compliant with Python3 by inserting at least : (from [[https://linuxfr.org/news/python-pour-la-rentree-2019-partie-2-48277b5e-c1a0-441e-836a-5c9536c4a8d6|Python pour la rentrée 2019 — partie 2]]) 
 + 
 +  from __future__ import absolute_import 
 +  from __future__ import division
   from __future__ import print_function   from __future__ import print_function
 +  from __future__ import unicode_literals
 +  
 +  from builtins import *
 +  
 +  from future import standard_library
 +  standard_library.install_aliases()
 +
      
 == RUL_WRI_004 Indentation == == RUL_WRI_004 Indentation ==
Ligne 136: Ligne 149:
  
 ==== Strings ==== ==== Strings ====
 +
 == RUL_STR_01 bytes storage (was: str usage) == == RUL_STR_01 bytes storage (was: str usage) ==
 Python2: Use ''str'' only for internal 7 bits characters string or ''bytes'' storage\\ Python2: Use ''str'' only for internal 7 bits characters string or ''bytes'' storage\\
Ligne 141: Ligne 155:
  
 == RUL_STR_002 QString usage == == RUL_STR_002 QString usage ==
 +
 Use ''QString'' only for Qt API functions and methods, convert results as soon as possible to ''unicode'' to be compliant for Python functions. Use ''QString'' only for Qt API functions and methods, convert results as soon as possible to ''unicode'' to be compliant for Python functions.
  
 == RUL_STR_003 Use unicode == == RUL_STR_003 Use unicode ==
 +
 For all other strings use ''unicode'' only strings. For all other strings use ''unicode'' only strings.
  
 === Classes === === Classes ===
  
 +== RUL_CLS_001 Forget old-style class ==
 +
 +Python 2: Any class MUST inherit directly or indirectly from ``object``.
 +
 +== RUL_CLS_002 ==
 +
 +Use ``self`` to identify instance parameter and ``cls`` for class  related parameter.
 +
 +== RUL_CLS_003 ==
 +
 + 
  
python.1565369413.txt.gz · Dernière modification : 2019/08/09 18:50 de francois

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki