Dans cet article, nous apprendrons si Python est sensible à la casse ou insensible à la casse.
Si un langage de programmation fait la distinction entre les caractères majuscules et minuscules, on dit alors qu'il est sensible à la casse.
Avez-vous déjà essayé de mélanger des lettres majuscules et minuscules dans votre mot de passe lorsque vous vous connectez à un site Web ? Par exemple, utilisez TutorialsPOINT au lieu de tutorielspoint comme mot de passe. Vous remarquerez peut-être que les lettres majuscules et les lettres minuscules sont considérées comme différentes et que le changement de casse vous empêchera de vous connecter.
Ceci est un exemple de sensibilité à la casse en action. Les langages de programmation sensibles à la casse font la distinction entre les lettres majuscules et minuscules. Par conséquent, nous devons utiliser la casse exacte de la syntaxe, car changer la casse, par exemple de print à Print, provoquera une erreur.
Oui, Python est un langage de programmation sensible à la casse. Cela signifie qu'il fait la distinction entre les lettres majuscules et minuscules. Par conséquent, en Python, nous ne pouvons pas utiliser de manière interchangeable deux termes avec les mêmes caractères mais des cas différents.
Le programme suivant renvoie l'erreur NameError as car l'instruction d'impression n'est pas valide (P majuscule) −
La traduction chinoise delength = 5 breadth= 2 area_rectangle = length*breadth Print("Area of Rectangle = ", area_rectangle)
Une fois exécuté, le programme ci-dessus générera le résultat suivant -
Traceback (most recent call last): File "main.py", line 5, in Print("Area of Rectangle = ", area_rectangle) NameError: name 'Print' is not defined
Le programme suivant renvoie l'aire d'un rectangle et est exécuté sans aucune erreur -
length = 5 breadth= 2 area_rectangle = length*breadth Print("Area of Rectangle = ", area_rectangle)
Une fois exécuté, le programme ci-dessus générera le résultat suivant -
Area of Rectangle = 10
Avez-vous déjà remarqué que la différence entre les majuscules et les minuscules produit deux résultats différents sur l'impression ? Selon la syntaxe Python, le mot-clé print doit toujours être en minuscule. Ainsi, lorsque nous avons modifié sa casse dans le code 1, Python ne l'a pas reconnu, ce qui a entraîné une NameError. Lorsque nous avons réparé le boîtier dans le code 2, nous avons obtenu les résultats escomptés.
Python est connu comme un langage sensible à la casse car il fait la distinction entre les caractères majuscules et minuscules lors de l'exécution. Même si les caractères sont identiques, Python traitera les deux termes comme différents lorsque la casse change. Si nous essayons de récupérer la valeur en utilisant une casse différente, nous obtiendrons une erreur.
La raison fondamentale pour laquelle Python est construit de cette façon est son applicabilité dans divers domaines. Nous ne souhaitons pas limiter le nombre d'identifiants et de symboles pouvant être utilisés, c'est pourquoi le respect de la casse est autorisé. En fait, la plupart des langages de programmation de haut niveau, tels que Java, C, C++ et JavaScript, sont sensibles à la casse.
Lors de l'écriture du code Python, nous devons suivre une convention de dénomination de variable spécifique. Celles-ci sont facultatives, mais elles rendent notre code plus clair et lisible.
Pour améliorer la lisibilité, les noms de variables et de fonctions doivent utiliser des lettres minuscules et être séparés par des traits de soulignement. Par exemple, input_number = 10.
Les noms des packages et des modules doivent également utiliser des lettres minuscules. Par exemple, importer des mathématiques.
La première lettre de chaque mot du nom de la classe doit être en majuscule. Ils ne doivent pas être séparés par des traits de soulignement. Par exemple, ExampleClass.
Les constantes doivent être toutes en majuscules et utiliser un trait de soulignement pour séparer les mots. Par exemple, PI = 3.1416.
Les conventions de dénomination mentionnées ci-dessus sont fortement recommandées pour de bonnes pratiques de codage, mais veuillez noter que ne pas les suivre du tout n'entraînera aucune erreur.
Dans la plupart des cas, les noms d'utilisateur utilisés pour se connecter aux sites Web ne sont pas sensibles à la casse. Si mon nom d'utilisateur est tutorials−point. Même si je tape Tutorials−Point ou TUTORIALS−POINT, je devrais pouvoir me connecter. Comment pouvons-nous forcer Python à ignorer la casse lors de la vérification de l’égalité ? Pour changer la casse d'une chaîne, nous pouvons utiliser les fonctions .upper() et .lower() de Python.
upper() − Cette fonction convertit tous les caractères de la chaîne spécifiée en majuscules.
lower() − Cette fonction convertit tous les caractères de la chaîne spécifiée en minuscules.
Supposons que nous devions créer une page de connexion dans laquelle le mot de passe est sensible à la casse mais le nom d'utilisateur ne l'est pas. Nous prendrons le nom d'utilisateur et le mot de passe saisis par l'utilisateur, convertirons le nom d'utilisateur en majuscule (ou minuscule) et le comparerons au nom d'utilisateur souhaité, qui est également converti en majuscule (ou minuscule). Nous n'avons pas besoin de convertir le mot de passe en majuscules ou en minuscules car il est sensible à la casse.
Python vérifiera si le nom d'utilisateur correspond uniquement par caractères, en ignorant la casse de l'entrée et les chaînes attendues. La vérification des mots de passe, en revanche, inclura la correspondance des caractères et de la casse. Mettons cela dans le code -
下面的程序减慢了区分大小写和不区分大小写之间的差异 -
input_username = "Tutorials-Point" gvn_username = "tutorials-point" input_password = "sampleP@SSword" gvn_password = "sampleP@SSword" # here we are converting the input_username into lowercase print("Case 1: Case Ignored(case-insensitive)") if (input_username.lower() == gvn_username.lower() and input_password == gvn_password): print("You are logged in Successfully!!") else: print("Incorrect Username or Password") print() # here we are directly checking whether the input_username and password # are equal to the gvn_username and gvn_password print("Case 2: Case Not Ignored(case-sensitive)") if (input_username == gvn_username and input_password == gvn_password): print("You are logged in Successfully!!") else: print("Incorrect Username or Password")
在执行上述程序时,将生成以下输出 −
Case 1: Case Ignored(case-insensitive) You are logged in Successfully!! Case 2: Case Not Ignored(case-sensitive) Incorrect Username or Password
在案例1中,通过使用.lower()函数,忽略了用户名的大小写。因此,即使用户输入的用户名和记录中的用户名的大小写不同,登录仍然成功。在案例2中,我们不使用.lower()或.upper()方法。因此,大小写不被忽略,相等性检查考虑了两个用户名的大小写。由于两个用户名的大小写不同,登录失败。
我们在上面的示例中简化了登录问题,假设只有一个有效的用户名和密码组合。我们没有使用.lower()或.upper()来忽略密码的大小写,因为密码始终区分大小写。
我们希望你不再对Python大小写敏感的最重要方面感到困惑。你现在熟悉了一些良好的Python大小写敏感的命名规范。你现在明白了在Python中如何忽略大小写进行大小写不敏感的字符串比较。
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!