day2

作者: 13147abc | 来源:发表于2018-10-19 19:58 被阅读0次

    认识python

    • control+/ 添加注释/取消注释
      control+s 保存
      control+b 编译
      control+r 执行(编译+执行)
      control+c 复制/拷贝
      control+v 粘贴
      control+x 剪切
      control+z 撤销
      control+shift+z 反撤销
      control+y 反撤销
      control+f 查找
      control+a 全选
      control+n 新建
      shift 可以选中部分(和鼠标配合,选中开始和结束中间的部分)
      control 可以多个位置出现光标(和鼠标配合)

    # 在控制台打印括号中的内容

    • print('Hello world! 你好,世界!')
      print('欢迎来到python1807!')
      print('欢迎来到千锋~')
      print('abc')

    python基本语法

    1.注释

    • 写在代码中不参与编译执行的部分就是注释。作用是用来对代码进行注释说明,方便程序更好的阅读代码
    • 注意:要勤写注释,方便自己也方便别人!
    • a.单行注释:在文本内容的前面前#
      b.多行注释
      每一行前都加一个#号
      我是注释1
      我是注释2
    • 将注释放在三个单引号/三个双引号中(推荐使用双引号)
      """
      我是多行注释1
      我是多行注释2
      """

    2.标识符

    • 标识符是用来命名的(比如变量名、函数名、类名)

    要求:

    • a.由字母数字和下划线组成,并且数字不能开头 --- python2.x规范
    • b.在Unicode编码中,除了ASCII码表中的字母、数字、下划线以外的部分不能作为标识符的一部分,
    • 其他的都可以。数字不能开头
    • 由字母数字下划线和中文组成,数字不能开头) --- python3.x规范
    • 注意:在实际开发,现在还是推荐使用python2.x的规范
    abc = 100
    abc123 = 100
    abc_123 = 20
    _123 = 100
    
    # 1abc = 100   # 报错:SyntaxError
    你好 = 100
    

    3.语句

    • C/Java语法,每条语句结束必须加分号。
    • python中一条语句结束可以加分号也可以不交;如果一行要显示多条语句,那么每条语句之间必须加分号
    print('hello python!'); print('hello world!')
    

    4.行和缩进

    • python中对缩进有严格规范,要求同样等级的代码对应的缩进必须一致;只有在需要产生代码块的时候才需要加缩进
    • 行:要求函数的声明和类的声明的前后需要有两个空行(不会报错)
    print('abc')
        # print('ABC')  # IndentationError:unexpected indent
    

    5.多行显示问题

    • a.在需要换行的位置加,然后再换行(\不要破坏数据本身)
    • b.如果是列表、字典、元祖和集合的值,可以直接换行
    sum1 = 1992374821734 + 391437128467 + \
           4985749775 + 98347592367485+ 78 + 787834 \
           + 4767582 + 3756 + 398475
    
    names = [
        12, 
        787347, 
        298378, 
        972893748973, 39785,
        2738957, 4273857, 
        342978, 3849758,
         3487985, 48993
         ]  
    

    6.常见的数据类型及其字面量

    • 整型(int)、浮点型(float)、布尔(bool)、字符串(str)、列表(list)、字典(dict)、元祖(tuple)、集合(set)等
    • 整型:相当于数学中的整数,例如:100, -12, +30,0
    • 浮点型:带小数点的数, 例如:12.5, 3.14, 0.23, 0.0, -12.34
    • 布尔:只有两个值分别是True(真)和False(假)
    • 字符串: 用单引号或者双引号括起来的数据, 例如:'abc', '100', "abc100=~"

    7.关键字(保留字)

    • 在python中有特殊功能和特殊意义的一些标识符(单词)。
    import keyword   # 导入keyword模块
    print(keyword.kwlist)  # 打印所有的关键字
    ['False', 'None', 'True', 'and', 'as',
     'assert', 'break', 'class', 'continue', 
     'def', 'del', 'elif', 'else', 'except', 
     'finally', 'for', 'from', 'global', 'if', 
     'import', 'in', 'is', 'lambda', 'nonlocal', 
     'not', 'or', 'pass', 'raise', 'return', 
     'try', 'while', 'with', 'yield']
    # 注意:在上面的[]中的内容才是关键字,其他的都不是
    

    数字类型

    • 不同的类型,在内存中存储时候所占的内存不一样

    1.python中的数字类型有四个:整型(int)、浮点型(float)、布尔(bool)、复数(complex)

    • a.整型(int):包含python所有的整数,python3.x整型只有int类型这一种,
    • 但是python2.x除了int还有long
    100
    123
    -78
    +782
    
    • b.浮点型(float):包含python所有的小数
    • 注意:浮点型支持科学计数法
    12.89
    -123.9098
    +237.890
    print(12e2)      # 12*10^2    1200.0
    print(12e-3)     # 12*10^(-3)    0.012 
    
    • c.布尔(bool): 布尔类型的值只有两个,分别是True(真)和False(假)
    • 注意:布尔值的首字母是大写的
    • True对应的数值其实是1,False对应的数值其实是0
    True
    False
    print(False+1) 
    

    d.复数(complex)

    • 复数:有实部和虚部组成的数字
      10+10j
    • 2.type(数值/变量): 获取括号中值的类型
    print(type(10j))
    print(type(100))
    print(type(True))
    print(type(2e2))
    
    • 3.类型名():将其他的类型的数据转换成当前类型
    print(int(12.5))
    print(bool(10))
    print(float(100))
    print(complex(100))
    # print(float(100+10j))   # 注意:复数不能转换成整型/浮点型
    

    变量

    1.什么是变量

    • 声明变量,就是在内存中开辟空间储存数据,变量就是程序在内存中存储数据的容器

    2.怎么声明变量

    • c/java声明变量:类型 变量名 = 初值;

    • Python声明变量:变量名 = 初值

    • 变量名 = 初值

    • 说明:
      a.变量名:程序员自己命名,要求是标识符,并且不能是关键字;所有的字母必须是小写的,如果变量名是由多个单词组成,多个单词之间用下划线隔开;见名知意(看见变量名,要知道这个变量大概存的是什么样的数据)
      b. = :赋值符号,功能是将=右边的值赋给左边的变量
      c.初值:有值的表达式(具体的字面量,其他已经声明过的变量)

    #声明一个变量number,并且赋值为100

    number = 100
    print(number)
    

    # 声明一个变量student_name,赋值为'小明'

    student_name = '小明'
    print(student_name)
    
    • 注意:虽然int、float、bool、str等不是关键字,但是在需要命名的时候最好别用他们来命名,否则会改变他们原来的功能
    # int = 100
    # print(int)
    # int(80.9)
    

    # 3.声明完一个变量可以给变量重新赋值,重新赋值后,新的值会覆盖变量中原来的值

    student_name = '小花'
    print(student_name)
    

    # python中,同一个变量可以存储不同类型的值

    student_name = 100
    print(student_name)
    

    # 4.同时声明多个变量

    • 变量名1=变量名2=变量名3 = 初值
    a = b = c = 123
    print(a,b,c)
    

    # 将变量student_name中的值,赋给new_name

    new_name = student_name
    
    • 注意:变量只有在赋完值后才能使用(只能声明后才能使用)
    # print(new_name2)  # definedNameError: name 'new_name2' is not 
    

    运算符

    • python中运算符:数学运算符、比较运算符、逻辑运算符、赋值运算符、位运算

    1.数学运算符: +, - , * , /, %, //, **

    • a. +:求和,和数学中的+号功能一样
    print(100 + 10)
    print(-100 + 10)
    print(12.5 + 3.14)
    
    • b. -:求差,和数学中的-号功能一样
    result = 99 - 23   # 将99-23的结果赋给变量result
    print(result)
    
    • c. *:求乘积,和数学中的×号功能一样
    print(1.23 * 3)
    print(-1.23 * 2)
    print(-1.23 * -2)
    
    • d. /(除):求商, 和数学中的÷号功能一样

    注意:和C语言中的/不一样

    print(5/2)  # 2.5
    print(12.5/5)
    
    • e. %:求余数
    • 注意:python中小数和整数都可以求余数
    print(5%2)
    print(6%2)
    print(5.0 % 0.2)
    
    • f. //(整除):求商,结果只取商的整数部分
    print(5 // 2)
    print(6.4 // 2)
    
    • g. **(幂运算): 求幂
    • x ** y : 求x的y次方
    • 技巧:可以通过把y的值设置为1/2(0.5)来求一个数的开平方
    print(2**3)
    print(100**0.5)
    
    • 2.比较运算符: >, <, ==, !=, >=, <=
      所有比较运算的结果是布尔值:True/False
      ==: 判断左右两边的值是否相等, =:将右边的值赋给左边的变量
    print(100 > 10)
    print(100 < 10)
    print(12.5 == 12.5)
    print(10 == 12.5)
    number = 10
    print(number == 100)  # False
    print(number)
    print(number != 100)  # True
    
    print(100 >= 100)
    print(10 < 11)      # True
    print(10 <= 10)   # True
    
    • 3.逻辑运算符: and(与), or(或), not(非)

    • 逻辑运算符的结果是布尔值。运算对象也必须是布尔值

    • a. 值1 and 值2:两个都为True,结果才是True。否则都是False

    • and相当于生活中的并且

    print('==============================')
    print(True and True)   # True
    print(False and True)  # False
    print(True and False)  # False
    print(False and False) # False
    

    # 练习:设置获得奖学金的条件:绩点在3.5以上,并且操评分高于90分

    grade = 3.8
    score = 95
    
    # 条件一:
    grade > 3.5
    # 条件二:
    score > 90
    
    • 两个条件同时满足
      print(grade>3.5 and score > 90)

    • 什么时候使用and: 要求多个条件同时满足的时候使用and连接

    • b. 值1 or 值2:两个都我False的时候结果才是False,否则就是True
    print('=======================')
    print(False or False)  # False
    print(True or False)  # True
    print(True or True)  # True
    

    # 练习:是否穿毛衣出门:温度低于20度,或者风速高于5级

    temperature = 18
    wind_speed = 4
    # 条件一:
    condition1 = temperature < 20    # condition1 = True
    
    # 条件二:
    condition2 = wind_speed > 5  # condition2 = False
    
    print(condition1 or condition2)  
    

    # 什么时候使用or: 要求多个条件中只要有一个条件满足

      1. not 值: 值取反(True -> False; False -> True)
        print(not True)
        print(not False)
    age = 18
    # 条件:年龄不大于18
    print(age <= 18)
    print(not age > 18)
    
    • 否定某个条件的时候使用not

    • 4.python中and和or会有短路现象

    • and的短路现象:值1 and 值2 --> 一旦确定值1的值是False,就不会再去执行判断值2

    • or的短路现象:值1 or 值2 --> 一旦值1的是True,就不会再去执行判断值2

    def func1():
        print('没有发生短路')
    
    False and func1()
    True or func1()  
    
    • 5.赋值运算符: =, +=, -=, *=, /=, %=, //=, **=
    • 赋值运算符的左边必须是变量。赋值的时候是先算赋值符号右边的结果,然后再将结果赋给左边的变量
    # 100 = 100   # SyntaxError: can't assign to literal
    result = 10 > 100
    print(result)
    
    • a. =: 单纯的将=右边的值赋给左边
      num1 = 100

    • b. +=, -=, *=, /=, %=, //=, **=
      要求左边的变量本身必须是有值的
      变量1 += 值 ----> 变量1 = 变量1+值

    num2 = 100
    num2 += 10    # 相等于: num2 = num2 + 10
    print(num2)
    
    num3 = 4
    num3 *= 2   # 相当于: num3 = num3 * 2
    print(num3)
    
    • 6.运算符的优先级:
    • a.数学运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符
    • b.先计算优先级高的,如果优先级相等就从左往右一次运算。
    • c.如果有括号,先算括号里面
    • d.数学运算符中:** > *, /, % ,// > +, -
    print((100 > 200) - 50* 3)
    

    相关文章

      网友评论

          本文标题:day2

          本文链接:https://www.haomeiwen.com/subject/ltyuzftx.html