python入门-布尔类型及操作符

101 阅读3分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第27天,点击查看活动详情


大家好,我是芒果,一名非科班的在校大学生。对C/C++、数据结构、Linux及MySql、算法等领域感兴趣,喜欢将所学知识写成博客记录下来。 希望该文章对你有所帮助!如果有错误请大佬们指正!共同学习交流

作者简介:



布尔类型

作为一个程序猿, 只要知道布尔值表示的是一个表达式的的 "真" 和 "假" 就行了

  • Python中用True和False来表示布尔值(注意, 第一个字符大写).
a = True
# a = true    #error 首字母大写
print(a)    #True
print(type(a))  #<class 'bool'>
  • 布尔类型的变量, 也是一种特殊的整数类型. 在和整数进行运算时, True被当做1, False被当做0.
a = True
b = False
c =0
print(a+c)  #1
print(b+c)  #0

输入输出

  • print函数将结果输出到标准输出(显示器)上.

    • print打印完默认会换行

    • 如果不想换行:多加一个参数

      a = 'name'
      print(a,end = ' ')  #以空字符作为分割
      
  • input函数从标准输入中获取用户输入

    name = input("请输入名字:")  #可以附带输入提示
    print(name)
    #执行结果:
    请输入名字:Mango
    Mango
    

input返回的结果只是一个字符串. 如果需要获得一个数字, 需要使用eval函数把字符串转换成对应的指令

a = input()
# print(a +1)     #error input返回的是字符串,不能把字符串和整数相加
print(eval(a) + 1)

注释

Python中使用 # 作为单行注释. #后面的内容都是注释的内容

  • 良好的注释, 也是一个优秀的程序猿必备的技能之一.

  • 使用中文注释时, 要小心 直接使用可能会运行报错(Python3 目前已经没有这个问题了, Python2要注 意).

  • Python的源代码默认只支持ASCII, 所以如果要包含中文, 需要在代码文件最开头的地方注明

    • #coding: UTF-8 写在第一行
      

操作符

  • Python中支持 + - * / % 这样的操作符. 并且它们的行为都和C语言一样.

  • / 是 "精确除法"

    a = 1
    b = 2
    print(a/b)  #0.5
    
  • // 是 "整除". 会对结果进行取整

    • Python2 中 / 是传统除法(即1/2 = 0) // 是地板除法, 和 Python3 的语义截然不同.
    a = 1
    b = 2
    print(a//b)     #0
    
  • ** 表示乘方运算(记得Python的数据无上限) a**b <==> a的b次方

    a = 100
    b = 10
    print(a**b) #100000000000000000000
    
  • Python也支持标准的比较运算符. > < >= <= == != 这些运算符的表达式的结果, 是一个布尔值

    a = 2 < 4
    print(type(a))  #<class 'bool'>
    
  • Python也支持逻辑运算符. and or not(相当于 与 或 非 ) 注意:符合短路原则

    • 短路原则:

      and:左边为False 就不看右边

      or : 左边为True,就不看右边了

    a = 2<4 and 2 == 4
    print(a)    #Falsea = 2<4 or 2 == 4
    print(a)    #True
    
  • Python中, 3 < 4 < 5 等价于 3 < 4 and 4 < 5 这一点和其他大多数编程语言都不太一样.

  • 运算符之间有高低优先级的区分. 应该合理使用括号来增加代码的可读性.

  • 字符串和字符串之间也可以使用运算符进行操作,

    • 例如前面使用 + 进行字符串连接
    print('hehe' + 'haha')  #hehehaha
    
  • 字符串之间可以使用 == !=来判定字符串的内容是否相同

    print('hehe' != 'haha') #True
    print('hehe' == 'haha') #False
    
  • 字符串之间也可以比较大小. 这个大小的结果取决于字符串的 "字典序"

    C,C++,Java都是按字典序进行比较字符串

    print('hehe' < 'haha')      #False
    print('mango' > 'Mango')    #True