美文网首页
Day1-Python基础语法

Day1-Python基础语法

作者: 周zau1 | 来源:发表于2018-07-17 19:55 被阅读177次

    1、常用快捷方式

    ctrl + / ---- 单行注释
    ctrl + s ---- 保存
    ctrl + b ---- 编译(编译执行)
    ctrl + n ---- 新建文件
    ctrl + c ---- 复制
    ctrl + v ---- 粘贴
    ctrl + a ---- 全选
    ctrl + x ---- 剪切
    ctrl + z ---- 撤销
    ctrl + y ---- 反撤销
    ctrl + shift + z ---- 反撤销
    摁住ctrl不放,让鼠标可以在多个位置设置光标
    ctrl + f ---- 搜索


    2、基础知识

    1.print函数

    print函数是python内置函数,作用是在控制台打印print后面()里面的任何内容
    ()里面的单引号,是字符串的标志,而不是内容
    在python2.x中 print 后不需要括号
    在python3.x中 print 后面需要括号

    print ('hello python!')
    

    2.注释

    注释就是代码源文件中,用来进行注解说明的文字,不会对代码的功能产生任何影响。好的代码和好的程序员,需要对代码通过注释进行说明。

    #我是单行注释
    '''
    我是多行注释
    '''
    """
    我是多行注释
    """
    
    注意:编程语言中涉及到的所有的符号,都是指的英文输入法状态下的符号

    3.标识符

    标识符是用来程序中命名用的。(比如:变量名、类名、函数名)

    a.标识符是由字母、数字和下划线组成,并且数字不能开头(硬性) --- python3.x 标识符里面可以有中文(但是不推荐使用)
    b.不能是关键字(保留字)(硬性)
    c.大小写敏感(区分大小写,aaa、AAA、AAa是不一样的)
    d.要见名知义(规范)
    e.不推荐使用python中的内置函数、类名去作为标识符(规范)

    4.关键字

    系统保留的有特殊功能或者特殊意的一些单词。这些单词不能用来给变量、函数、类等命名

    查看关键字:
    import 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']
    

    5.行与缩进

    缩进:每一行代码的位置,与行开头位置之间的空格
    在python中,缩进的写法有严格的规范。同一级的代码,必须写在同一个缩进下面。
    如果在不该有空格产生的位置出现了多余的空格,程序会报错(IndentationError)
    如果在需要缩进的时候没有缩进也会报错

    关于行的规范:

    函数和类的声明的前后必须要有两个换行。一般一个功能实现完,实现下一个功能的时候,最好也换行

    6.多行语句

    一条语句在多行显示。

    • python中,一条语句结束,可以不写分号;但是如果一行中要写多条语句,那么每条语句之间必须使用分号隔开。分号有换行效果。
    • 反斜杠(\)+回车(enter)有缩进效果。
    • \n 可以直接换行。
    • 字典、列表、集合和元祖等容器类型数据的字面量,在多行显示的时候可以直接换行。
    print ('Jay Chou') ; print ('Kobe Bryant')
    print ('Jay Chou \
        Kobe Bryant')
    print ('Jay Chou \nKobe Bryant')
    print ([1,2,3,
        4,5])
    
    Jay Chou
    Kobe Bryant
    Jay Chou    Kobe Bryant
    Jay Chou 
    Kobe Bryant
    [1, 2, 3, 4, 5]
    

    7.python中的基本数据类型

    类型 缩写 举例
    数字 详见下表 详见下表
    字符串 str '!98k'
    列表 list [1,2,'Jay']
    字典 dict {'a':1,'b':123}
    集合 set ['j','a','y']
    元祖 tuple ------
    none ------ 表示没有或空值

    数字类型 缩写 举例
    整形 int 所有整数
    浮点型 float 所有小数和科学计数
    布尔 bool True/False
    复数 complex 9+10i
    查看数据类型:

    可以通过type函数查看数据的类型:type(数据)

    print (type(24))
    print (type('Kobe'))
    
    <class 'int'>
    <class 'str'>
    

    8.变量

    在程序中可以通过变量来存储数据(容器)。python中的变量是不需要声明的,直接通过赋值符号(=)给变量赋值,就是在声明变量。因为python是动态语言,在声明变量的时候,不需要指定变量的类型。并且同一个变量可以赋不同类型的值。

    格式:变量名 = 值
    变量名:标识符,PEP8的命名方式(所有的字母都小写,多个单词之间用下划线隔开,例如:user_name)

    驼峰式命名:第一个单词首字母小写,后边每个单词的首字母都大写(例如:kobeBeenBryant)

    # 声明了一个变量stu_zau,并且赋值为24
    stu_zau = 24
    # 使用变量的时候,就相当于使用变量中存的值
    print (stu_zau)
    print (type (stu_zau))
    # 1.如果重新给一个变量赋值,那么新赋的值会覆盖原来的值
    # 2.同一个变量可以赋不同类型的值
    stu_zau = 'Bryant'
    print (stu_zau)
    print (type (stu_zau))
    #打印未赋值变量
    print (stu_jay)  # NameError
    
    24
    <class 'int'>
    Bryant
    <class 'str'>
    [Decode error - output not utf-8]
        print (stu_jay)  # NameError
    NameError: name 'stu_jay' is not defined
    

    一个数据有type(类型)、ID(数据存储在计算机中的地址)和value(值)三个属性
    变量存储数据的时候,有两种情况。第一种情况:存value---->数字类型、字符串,第二种情况:存ID---->字典、列表、集合、元组、类的对象等

    查看存储地址
    num = 10
    print (id (num))
    

    3、运算

    1.运算符

    • 数学运算符
      + 、 - 、 * 、 / 、 % 、 ** 、 //
      和 、差 、积 、商 、余 、 幂 、 取整
      True ---> 1 False ---> 0
    # 取2345中的4
    print (2345 % 100 // 10)
    print (2345 // 10 % 10)
    
    • 比较运算符
      > 、 < 、 == 、 >= 、 <= 、 !=
      比较运算符的结果全是布尔:TureFalse
    # 在python中,可以像数学中一样,连续判断
    num = 15
    resulut = 10 < num < 20  #判断 num 是否在 10 到 20 之间
    print (resulut)
    
    • 逻辑运算符
      and 、 or 、 not
      与 、 或 、 非
      并且、或者、取反
      逻辑运算符的运算数据是布尔值,结果也是布尔值
      布尔1 and 布尔2 :两个都为Ture结果才是Ture,只要有一个是False,结果就是False
      需要两个或者多个条件同时满足,就使用逻辑与(and)

    布尔1 or 布尔2 :两个都为False结果才是False,只要有一个是Ture,结果就是Ture
    需要两个或者多个条件中,满足一个就可以,就使用逻辑或(or)

    not 布尔1 :如果是Ture,结果就是False;如果是False,结果就是Ture
    需要不满足某个条件的时候才为Ture

    # 平均成绩大于90分,或者操评分大于100,并且英语成绩不能低于80分
    score = 80 
    score_c = 90
    score_e = 70
    print (score > 90 or score_c > 100 and (not score_e > 80))
    print (score > 90 or score_c > 100 and  score_e <= 80)
    
    • 赋值运算符
      = 、 += 、 -= 、 *= 、 /= 、 %= 、 **= 、 //=
    赋值运算符的作用:

    将赋值符号右边的表达式的值赋给左边的变量
    表达式:有一个具体结果的语句,例如:10 , 'abc' , 10 + 20 , 30 > 10.5 等。
    赋值符号的左边必须是变量。
    赋值符号,是先算右边的结果,然后再把结果赋给左边的变量。

    num = 24
    num += 8          #相当于:  num = num + 8
    print ( num )     #          num = 24  + 8 = 32
    
    num *= 2
    print ( num )     #          num = 32  * 2 = 64
    
    • 运算符的优先级
    优先级从低到高:

    赋值运算符<逻辑运算符<比较运算符<算术运算符

    算术运算符优先级:

    先幂运算再乘除取余取整再加减

    如果不确定运算顺序,可以通过添加括号来改变运算顺序(括号优先运算)

    num = 10 + 20 > 15 and 7 * 8 < 30 + 60 
    # num = 30 > 15 and 56 < 90 
    # num = True and True 
    # num = True 
    print (num)
    

    2.进制转换

    常用进制有十进制、二进制、八进制、十六进制。数据在计算机中的存储,存的都是二进制数(0101......)

    十进制
    基数:0,1,2,3,4,5,6,7,8,9
    特点:逢10进1
    12345 = 5 + 40 + 300 + 2000 + 10000
    = 5 * 1 + 4 * 10 + 3 * 100 + 2 * 1000 + 1 * 10000
    = 5 * (10^0) + 4 * (10^1) + 3 * (10^2) + 2 * (10^3) + 1 * (10^4)

    二进制
    基数:0,1
    特点:逢2进1
    10101 = 1 * (2^0) + 0 * (2^1) + 1 * (2^2) + 0 * (2^3) + 1 * (2^4)
    = 1 + 0 + 4 + 0 + 16
    = 21

    八进制
    基数:0,1,2,3,4,5,6,7
    特点:逢8进1
    24 = 4 * (8^0) + 2 * (8^1)
    = 4 + 16
    = 20

    十六进制
    基数:0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f
    特点:逢16进1
    2f = f * (16^0) + 2 * (16^1)
    = 15 + 32
    = 47

    进制间的转换:
    • 十进制转换为其他进制:
      整数取余法。
    • 八进制转二进制:
      【一转三位】八进制的一位相当于二进制的三位,转换时按照十进制转换。
    • 十六进制转二进制:
      【一转四位】十六进制的一位相当于二进制的四位,转换时按照十进制转换。
    • 八四二一进制转换法
    python中的二进制、八进制和十六进制
    # 2.python中的二进制、八进制和十六进制
    # 默认的数字都是十进制
    169         #十进制数
    
    # 基数是0-1并且数字前加前缀0b表示二级制
    0b1011      #二进制数
    # bin(整数) ---->  将其他进制的整数转换成二进制数
    print (bin(11))
    
    # 基数是0-7并且数字前加前缀0o表示八进制
    0o157       #八进制数
    # oct(整数) ---->  将其他进制的整数转换成八进制数
    print (oct(111))
    
    # 基数是0-9,a-f并且数字前加前缀0x表示十六进制
    0x1af       #十六进制数
    # hex(整数) --- >  将其他进制的整数转换成十六进制数
    print(hex(431))
    

    相关文章

      网友评论

          本文标题:Day1-Python基础语法

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