在本文中,我们将学习Python是区分大小写还是不区分大小写。
如果一种编程语言区分大小写字符,那么它被称为区分大小写。
你是否曾尝试在登录网站时将密码中的大写字母和小写字母混合使用?例如,使用TutorialsPOINT而不是tutorialspoint作为密码。你可能会观察到,大写字母和小写字母被认为是不同的,改变大小写会阻止你登录。
这是大小写敏感性在实际中的一个例子。大小写敏感的编程语言会区分大写和小写字母。因此,我们必须使用语法的确切大小写,因为改变大小写,例如从print 到Print,会导致错误。
是的,Python是一种区分大小写的编程语言。这意味着它会区分大小写字母。因此,在Python中,我们不能将具有相同字符但大小写不同的两个术语互换使用。
以下程序抛出NameError as错误,因为print语句无效(大写的P)−
length = 5 breadth= 2 area_rectangle = length*breadth Print("Area of Rectangle = ", area_rectangle)
在执行时,上述程序将生成以下输出 -
Traceback (most recent call last): File "main.py", line 5, in Print("Area of Rectangle = ", area_rectangle) NameError: name 'Print' is not defined
以下程序返回矩形的面积,并且在没有任何错误的情况下执行 -
length = 5 breadth= 2 area_rectangle = length*breadth Print("Area of Rectangle = ", area_rectangle)
在执行时,上述程序将生成以下输出 -
Area of Rectangle = 10
你有没有注意到大小写的不同在打印输出上产生了两个不同的结果?根据Python语法,关键字print应该始终使用小写。因此,当我们在代码1中改变了它的大小写时,Python无法识别它,导致了NameError错误。当我们在代码2中修正了大小写时,我们得到了预期的结果。
Python被称为区分大小写的语言,因为它在执行过程中区分大小写字符。即使字符相同,Python也会在大小写发生变化时将两个术语视为不同。如果我们尝试使用不同大小写检索值,将会出现错误。
Python之所以以这种方式构建的根本原因是它在各个领域都有适用性。我们不希望限制可以使用的标识符和符号的数量,因此允许区分大小写。实际上,大多数高级编程语言,如Java、C、C++和JavaScript,都是区分大小写的。
在编写Python代码时,我们需要遵循特定的变量命名约定。这些是可选的,但它们可以使我们的代码更清晰和可读。
为了提高可读性,变量和函数名应该使用小写字母,并用下划线分隔。例如,input_number = 10。
包和模块的命名也应该使用小写字母。例如,import math。
类名的每个单词的首字母应该大写。它们不应该用下划线分隔。例如,ExampleClass。
Constants should be all uppercase and use underscore to separate words. For example, PI = 3.1416.
上述的命名约定强烈建议用于良好的编码实践,但请注意,完全不遵循它们不会导致任何错误。
在大多数情况下,用于登录网站的用户名不区分大小写。如果我的用户名是tutorials−point。即使我输入Tutorials−Point或TUTORIALS−POINT,我也应该能够登录。我们如何强制Python在检查相等性时忽略大小写?要更改字符串的大小写,我们可以利用Python的.upper()和.lower()函数。
upper() − 该函数将指定字符串中的所有字符转换为大写。
lower() − 该函数将指定字符串中的所有字符转换为小写。
假设我们需要创建一个登录页面,其中密码是区分大小写的,但用户名是不区分大小写的。我们将获取用户输入的用户名和密码,将用户名转换为大写(或小写),并将其与所需的用户名进行比较,所需的用户名也同样转换为大写(或小写)。我们不需要将密码转换为大写或小写,因为它是区分大小写的。
Python将仅通过字符检查用户名是否匹配,忽略输入和期望字符串的大小写。另一方面,密码检查将包含字符和大小写匹配。让我们把这个放进代码中 -
下面的程序减慢了区分大小写和不区分大小写之间的差异 -
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中如何忽略大小写进行大小写不敏感的字符串比较。
以上是Python是区分大小写的还是不区分大小写的?的详细内容。更多信息请关注PHP中文网其他相关文章!