美文网首页
day2-python基础

day2-python基础

作者: 丿Rem丶 | 来源:发表于2018-09-26 23:26 被阅读0次

    一、认识Python

    1.常用的快捷键

    • 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可以让多个位置出现光标(和鼠标配合)

    附:不是只在Python里有效


    二、Python的基本用法

    1.注释

    • 意义:写在代码中不参与编译执行的部分

    • 作用:对代码进行注释说明,方便程序员更好的阅读

    • 分类:
      单行注释:在文本内容前面加#
      多行注释:
      a.每一行前都加一个#号
      # 我是注释1
      # 我是注释2
      b.将注释放在三个单引号/三个双引号中(推荐使用双引号)
      '''
      我是多行注释1
      我是多行注释2
      '''

    2.标识符

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

    • 要求:
      a.由字母数字和下划线组成,并且数字不能开头(Python2.x规范)
      b.在Unicode编码中,除了ASCII码表中的字母、数字、下划线以外不能作为标识符的一部分,其他都可以,数字不能开头(Python3.x规范)

    注意: 在实际开发中,现在还是推荐使用Python2.x规范

    • 测试代码:
    abc = 100
    abc123 = 100
    abc_123 = 100
    _123 = 100
    # 1abc = 100 报错
    你好 = 100
    

    3.语句

    C/JAVA语法,每条语句结束必须加分好

    python中一条语句结束可以加分号也可以不加;如果一行显示多条语句,那么每条语句之间必须加分号

    • 测试代码:
    print('abc');print('ABC')
    
    • 测试结果:


      语句案例测试结果

    4.行和缩进

    同样等级的代码对应的缩进必须一致,只有在需要产生代码块的时候才需要加缩进,函数的声明和类的声明的前后需要有两个空行

    5.多行显示问题

    • a. 在需要换行的地方加反斜杠,然后再换行(反斜杠需要破坏数据本身)
    sum1 = 1312321323+123213213123+1232142321+\
           213213123213+2321321312+21321321321+\
           3213213+12321321321+123213213
    
    • b. 如果是列、字典、元祖和集合的值,可以直接换行
    name = [1321,13213,2324343,535353,
            3434343,2432423432,3543532532,
            34532532532,32532532532,3532535325,
            35325325,2353253253]
    

    6.常见的数据类型及其自变量

    分类:

    中文 英文
    整型 int
    浮点型 float
    布尔 bool
    字符串 str
    列表 list
    字典 dict
    元祖 tupl
    集合 set

    介绍:

    • 整型:相当于数学中的整型,例如:100,-12,+30

    • 浮点型:带小数点的数,例如:12.12,0.0,-12.53

    • 布尔型:只有两个值,分别是True(真)和False(假)

    • 字符串:用单引号或者双引号括起来的数据,例如:'abc','100','abc100`~'

    7.关键字

    • 意义:在python中有特殊功能和特殊意义的一些标识符(单词)

    • 打印关键字代码:

    import keyword  #导入keyword模块
    print(keyword.kwlist)  #打印所又的关键字
    
    • 结果:


      123.JPG

    三、数字类型

    1.四种数字类型

    中文 英文
    整型 int
    浮点型 float
    布尔 bool
    复数 complex

    2.数字类型简介

    • 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(对应1)和False(对应0)
      注意:布尔值的首字母是大写的

    例子:

    True
    False
    print(False+1)     #1
    print(True+1)      #2
    
    • d.复数(complex):由实部和虚部组成的数字

    例子:

    10+10j
    

    3.获取数字类型

    • 方法:在Python中采用type(数值/变量),来获取括号中值的类型

    • 例子:

    print(type(10j))
    print(type(100))
    print(type(True))
    print(type(2e2))
    
    • 结果: 获取数据类型结果

    4.转换数字类型

    • 方法:在Python中采用类型名(),将其他类型的数据,转化成当前类型
    • 例子:
    print(int(12.5))
    print(bool(10))
    print(float(100))
    print(complex(100))
    # print(int(10j))     注意:复数不能转换成整型和浮点型
    
    • 结果:


      转换数据类型结果

    四、变量

    1.变量

    作用:程序在内存中存储数据的容器

    2.声明变量

    • 概念:在内存中开辟空间存储数据

    • 方法:
      C/Java声明变量:类型 变量名 = 初值;
      Python声明变量:变量名 = 初值

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

    注意:变量只有在赋完值后才能使用(只能声明后才能使用)

    # 将变量student_name中的值,赋给new_name
    new_name = student_name
    # print(new_name2)     NameError: name 'new_name2' is not defined
    
    • 测试代码:
    # 声明一个变量number并且赋值为100
    number = 100
    print(number)     
    # True = 12.5     SyntaxError: can't assign to keyword
    # 1abc = True       SyntaxError: invalid syntax
    # 声明一个变量student_name,赋值为'小明'
    student_name = '小明'
    print(student_name)
    # 注意:虽然int、float、bool等不是关键字,但在需要命名的时候,最好不用他们来命名,否则会改变它们原来的功能
    # int = 100
    # print(int)
    # int(89.9)
    
    • 测试结果:


      打印变量测试结果
    • 附:声明完的变量可以重新赋值,重新赋值后,新的值会覆盖原来的值
    student_name = '小花'
    print(student_name)
    # 注意:在Python中,同一个变量可以存储不同类型的值
    student_name = 100
    print(student_name)
    
    重新赋值结果图

    3.多变量声明

    • 方法:
      变量名1=变量名2=变量名3... = 初值

    • 测试代码:

    a = b = c = 123
    print(a,b,c)     #print同时打印多个数据,多个数据之间用逗号隔开
    
    • 测试结果:


      多变量声明测试结果.JPG

    4.声明变量区别

    • C/Java声明变量:类型 变量名 = 初值
      int a = 10;
      a = 100;
      开辟4个字节的内存空间a,将10放进去,重新赋值的时候,修改空间内的值
    • Python声明变量:变量名 = 初值
      a = 10
      a = 100
      在内存中开辟空间把10存起来,用a将内存空间命名,重新赋值的时候,再开辟空间把100存起来,重新用a命名
    • 附:不同的类型,在内存中存储的时候所占的内存不一样

    五、运算符

    1.运算符类型

    • 分类:
      • 数学运算符
      • 比较运算符,
      • 逻辑运算符,
      • 赋值运算符,
      • 位运算

    2.数学运算符

    • 分类:
    符号 意义
    + 求和
    - 求差
    * 求积
    / 求商
    % 求余
    // 整除
    ** 幂运算
    • 测试代码:
    #   a.+:求和,和数学中的功能一模一样
    print(100 + 10)
    print(-100 + 10)
    print(12.5 + 3.14)
    #   b.-:求差,和数学中的功能一模一样
    result = 99-23
    print(result)     #将99-23的结果赋给变量result
    #   c.*:求乘积,和数学中的功能一模一样
    print(1.23 * 3)
    print(-1.23 * 2)
    print(-1.23 * -2)
    #   d./:求商,和数学中的功能一模一样
    #   注意:和C语言中的/不一样
    print(5/2)
    print(12.5/5)
    #   e.%取余:求余数
    #   注意:Python中小数和整数都可以求余数
    print(5%2)
    print(6%2)
    print(5.5%0.3)
    #   f.//整除:,求商,结果只取整整数部分
    print(5//2)
    print(6.4//2)
    #   g.**幂运算:求幂
    #   x ** y :求x的y次方
    #   技巧:可以通过设置y的值来实现开方
    print(2**3)
    print(100*0.5)
    
    • 测试结果:


      数学运算符测试代码

    3.比较运算符

    • 分类:
    符号 意义
    > 大于
    < 小于
    == 等于
    != 不等于
    >= 大于等于
    <= 小于等于
    • 附:所有比较运算的结果是布尔值:True/False

    • 测试代码:

    print(100 > 10)
    print(100 < 10)
    print(12.5 == 12.5)
    print(10 == 12.5)
    number = 10
    print(number == 10)     #False
    print(number)
    print(number != 100)    #True
    print(100 >= 100)       #True
    print(10<11)            #True
    print(10<=10)           #True
    
    • 测试结果:


      比较运算符测试结果

    4.逻辑运算符

    • 分类:
    符号 意义
    and
    or
    not
    • 介绍:
      a.值1 and 值2:两个都为True,结果才是True,否则都是False,相当于生活中的并且(要求多个条件同时满足时,使用and连接)
      b.值1 and 值2:两个都为False,结果才是False,否则都是True,相当于生活中的或者(要求多个条件有一个满足时,使用or连接)
      c.not 值:值取反(True -> False;False -> True),相当于生活中的不是(否定某个条件的时候使用not)

    • 测试代码:

    a.值1 and 值2:两个都为True,结果才是True,否则都是False,相当于生活中的并且
    print('=====================================')
    print(True and True)     #True
    print(True and False)    #False
    print(False and True)    #False
    print(False and False)   #False
    # 练习:获得奖学金的条件:要求绩点在3.5以上,并且操评分在90分
    grade = 2.8
    score = 95
    # 条件一:
    grade > 3.5
    # 条件二:
    score > 90
    # 两个条件同时满足
    print(grade > 3.5 and score > 90)
    #   b.值1 and 值2:两个都为False,结果才是False,否则都是True,相当于生活中的或者
    print('=====================================')
    print(True or True)     #True
    print(True or False)    #True
    print(False or True)    #True
    print(False or False)   #False
    # 练习:是否穿毛衣出门:温度低于20度,或者风度高于5级
    temperture = 18
    wind_speed = 4
    # 条件一:
    condition1 = temperture < 20    #condition1 = True
    # 条件二;
    condition2 = wind_speed > 5     #condition2 = False
    print(condition1 or condition2)
    #   c.not 值:值取反(True -> False;False -> True),相当于生活中的不是
    age = 18
    # 条件:年龄不大于18
    print(age <= 18)
    print(not age > 18)
    
    • 测试结果:


      逻辑运算符测试结果
    • 附:Python中and和or会有短路现象
      • and的短路现象:值1 and 值2 -->一旦确定值1的值是False,就不会执行判断值2
      • or的短路现象:值1 or 值2 -->一旦确定值1的值是True,就不会执行判断值2

    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
    print(num2)
    num3 = 4
    num3 *= 2
    print(num3)
    

    *测试结果:


    赋值运算符测试代码

    6.运算符的优先级

    • 优先级:数学运算符((幂运算>乘、除、取整、取余>加、减)>比较运算符>逻辑运算符>赋值运算符

    • 计算方法:先计算优先级高的,优先级相等,从左往右依次运算,如果有括号优先计算括号里的

    • 测试代码:

    print((100 > 200) - 50 * 3)
    
    • 测试结果:


      捕获.JPG

    作业

    1.写代码获取数字1234中的十位上和百位上的数字

    解答:

    number = 1234
    print(number//10%10)
    number = 1234
    print(number//100%10)
    
    捕获.JPG

    2.如果变量n的值是6784, 以下表达式的结果是多少?

    1. n / 1000 % 100
    2. n % 1000 / 100
    3. n // 100 % 10
    4. n // 10 % 100 // 10
    • 解答:
      1. n/1000%100
        =6.784%100
        =6.784
      2. n%1000/100
        =784/100
        =7.84
      3. n//100%10
        =67%10
        =7
      4. n//10%100//10
        =678%100//10
        =78//10
        =7
        *代码验证:
    print(6784 / 1000 % 100)
    print(6784 % 1000 / 100)
    print(6784 // 100 % 10)
    print(6784 // 10 % 100 // 10)
    
    题二解答

    3.表达式 10 / 4 + 23 // 4 * 2 - 30 的结果是多少?

    • 解答:
      10/4+23//42-30
      =2.5+5
      2-30
      =-17.5
    • 代码验证:
    print(10 / 4 + 23 // 4 * 2 - 30)
    
    题三解答

    4.写出下面每一行中n3的结果:n1 = 4; n2 = 5

    1. n3 = n1 >n2
    2. n3 = n1<n2
    3. n3 = n1==4
    4. n3 = n1!=4
    5. n3 = n1 == 1+3
    • 解答:
      1. n3=n1>n2
        ->n3=4>5
        ->n3=Flalse
      2. n3=n1<n2
        ->n3=4<5
        ->n3=True
      3. n3=n1==4
        ->n3=True
      4. n3 = n1!=4
        ->n3=4!=4
        ->n3=Flalse
      5. n3=n1==1+3
        ->n3=n1==4
        ->n3=True
    • 代码验证:
    n1 = 4
    n2 = 5
    n3 = n1 > n2
    n4= n1 < n2
    n5 = n1 == 4
    n6 = n1 != 4
    n7 = n1 == 1+3
    print(n3,n4,n5,n6,n7)
    
    image.png

    5.写出以下代码执行完成后,num的结果

    num = 10
    num /= 2
    num += 10 * 10 / 4 + 23*2

    • 解答:
    num = 10
    num /= 2
    num += 10 * 10 / 4 + 23*2
    
    捕获.JPG

    6.下面定义变量正确的是()

    a. a = b = c = 10
    b. a, c = 10
    c. in = 20
    d. num = 10; t = 20

    • 解答:
      AD
      B:'int' object is not iterable
      C:invalid syntax

    相关文章

      网友评论

          本文标题:day2-python基础

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