美文网首页
千锋的第二天

千锋的第二天

作者: 堪怜咏絮才 | 来源:发表于2018-07-17 21:16 被阅读517次

    一、Python的简介

      1、Python的发展史

      2、Python的优缺点

    • 优点:7点(主要优点语言简洁,开发时间短,可以节约时间)
    • 缺点:3点(主要是运行效率低)

      3、Python的应用领域

    二、Hello World!

      1、第一个代码

    print('Hello World!')
    print('你好 世界!')
    

      2、快捷方式

    • (1)control+/----->单行注释
    • (2)control+s----->保存
    • (3)control+b----->编译执行
    • (4)control+a----->全选
    • (5)control+c----->复制
    • (6)control+v----->粘贴
    • (7)control+x----->剪切
    • (8)control+n----->新建文件
    • (9)control+z----->撤销
    • (10)control+y或者control+shift+z----->反撤销
    • (11)control+f----->弹出搜索窗口

      3、print函数

    • print函数是Python中的内置函数,它的作用是打印后面()中的任何内容,(注意:格式为print('内容'),此处的单引号是字符串,而不是打印的内容,为固定格式)-------打印字符串需要加单引号,因为单个的字母没有任何意义,程序不能识别它到底代表什么,打印其他内容不加
      备注:在Python2.X版本中,不需要加括号,如 print'你好'
    • 版本的一些知识:A版一般代表重大修改,不向下兼容;B版主要是添加新的功能;C版主要是修改一些BUG

    三、Python的基础语法

       1、注释

    定义:一些用来说明的文字,对代码不造成任何影响 (应该养成写注释的习惯)
    a、用#号来添加单行注释
    b、用三个双引号(""")开头和三个双引号(""")结尾来 添加多行注释,也可以用三个单引号(''')开头和三个单引号(''')结尾来添加多行注释
    特别注意:编程语言中涉及到的所有的符号,都是指的英文输入法状态下的符号

      2、标识符

    (1)标识符的用途:变量、类名、函数名
    (2)标识符的命名规则
    a.标识符是由字母、数字和下划线组成,并且数字不能开头(硬性)不一定非要全部包含字母、数字和下划线,只要是其中的一种即可
    补充:python3.x中,标识符里面可以有中文,但是不推荐使用
    切记:标识符不能用数字开头——特别重要
    b.不能是关键字(保留字)(硬性)(关键字就是在Python中有特殊意义的一些单词)
    c.大小写敏感(需要区分大小写,aaa和Aaa、AAA、AAa是不一样的)
    d.要见名知义(规范)
    e.不推荐使用Python中的内置函数、类名去作为标识符(规范)

      3、关键字

    定义:系统保留的有特殊意义和特殊运用的一些单词,这些关键字不能用来给函数、类、变量命名
    查找关键字的方法

    import keyword
    print (keyword.kwlist)
    ['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', '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']Python中的关键字
    

      4、行与缩进

    定义:每一行代码的位置与行开头位置之间的空格
    在Python中,缩进的写法有严格的规范。同一级的代码,必须在同一个缩进下面(没有实现块代码的时候写代码必须顶格写,不能留有空格)
    如果在不该有空格产生的位置出现了多余的空格,程序会报错(IndentationError)如果在需要缩进的时候没有缩进也会报错
    关于行的规范:
    函数和类的声明的前后必须要有两个换行。一般一个功能实现完,实现下一个功能的时候,最好也换行

      5、多行语句

    功能:实现一条语句在多行显示
    a.在需要换行的地方加反斜杠(),然后在换行
    b.字典、列表、集合和元组等容器类型数据的字面量,在多行显示的时候可以直接换行
    Python中,一条语句结束可以不写分号;但是如果要在一行中写多条语句,那么每条语句之间必须要用分号隔开

      6、字面量

    定义:数据类型对应的具体的值

      7、Python中的基本数据类型

    主要包括:数字(整型(int)、浮点型,布尔、复数)、字符串(str)、列表(list)、字典(dict)、集合(set)、元组(tuple)、none
    可以用type函数查看数据的类型:type(数据)

    print(type(10e2))
    print(type('abc'))
    

    四、变量

    定义:在程序中可以通过变量来存储数据(容器)
    声明:变量是不需要声明的,因为它是动态量
    变量名:属性是标识符,PEP8的命名方式(所有的字母都小写,多个单词之间用下划线(_)隔开,例如:user_name
    驼峰式命名:第一个单词首字母小写,后面每个单词的首字母都大写(例如:userName)

    age=18
    #声明了一个变量age,并且赋值为18
    #使用变量的时候,就相当于使用变量中存的值
    print(age)
    student_age=12
    print(student_age)
    print(type(student_age))
    
    #1.如果重新给一个变量赋值,那么新赋的值会覆盖原来的值
    #2.同一个变量可以赋不同的值
    student_age=18.5
    print(student_age,type(student_age))
    #补充:
    #一个数据有type(类型)、id(数据存储在计算机中的地址)和value(值)三个属性
    #变量存储数据的时候,有两种情况:第一种情况、存value----->数字类型、字符串,第二种情况、存id----->字典、集合、元组类的对象等
    number=10
    print(id(number))
    结果:18
    12
    <class 'int'>
    18.5 <class 'float'>
    140711643895104
    [Finished in 0.9s]
    

    五、运算符

      1、数学运算符(+、-、,/,%、*、//)

    +:求和
    注意:求和操作,+两边必须是数字类型
    -:求差
    *:求积
    /:求商
    % :求两个数相除的余数
    ** :幂运算
    浮点数在计算机中存储的时候,有的时候会有一定的误差
    // :整除
    在这些运算当中,只有幂运算最优先

      2、比较运算符(>、<、==、>=、<=、!=)

    比较运算符的结果全是布尔值:True、False

      3、逻辑运算符(与(and)、或(or)、非(not))

    逻辑运算的运算数据是布尔值,结果也是布尔值
    布尔1 and 布尔2 :两个都为True结果才是True,只要有一个是False,结果就是False。并且
    需要两个或者多个条件同时满足,就使用逻辑与(and)
    布尔1 or 布尔2 :只要有一个是True,结果就是True.两个都为False结果才是False。或者
    需要两个或者多个条件中满足一个就可以,就使用逻辑或(or)
    not 布尔1 :如果是True,结果就是False;如果是False,结果是True
    需要不满足某个条件的时候才为True
    需要不满足某个条件才用not 非

      4、赋值运算符(=、+=,-=,=,/=,%=,*=,//=)

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

      5、运算符的优先级

    优先级从低到高:赋值运算符<逻辑运算符<比较运算符<算术运算符
    算术运算符中:先幂运算再乘除取余取整再加减
    如果你不确定运算顺序,可以通过添加括号来改变运算顺序。有括号就先算括号里面

    六、进制转换

      1.十进制

    基数:0,1,2,3,4,5,6,7,8,9
    特点:逢十进一
    1111=11000+1100+110+11
    12345=110000+21000+3100+410+5*1

      2. 二进制

    基数:0,1
    特点:逢二进一 10---->2
    101011=1(2^0)+1(21)+0*(22)+1(2^3)+0(24)+1*(22)=43

      3.八进制

    基数:0,1,2,3,4,5,6,7
    特点:逢八进一
    123=3(8^0)+2(81)+1*(82)=83

      4. 十六进制

    基数:0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f(a=10,b=11,c=12,d=13,e=14,f=15)
    特点:逢十六进一
    2f=47

         (1)进制间的转换:

    十进制转换成其他进制:整除取余
    八进制转二进制:一位八进制转换成三位二进制----->23=010011
    十六进制转二进制:一位的十六进制转化成四位的二进制---->2f=00101111

         (2)Python中的二进制、八进制和十六进制

    默认的数字都是十进制
    a.二进制(binary)(bin)
    基数是0,1,并且数字前加前缀0b或者0B表示二进制
    bin(整数)------>将其他进制的整数转换成二进制数
    b.八进制(octal)(oct)
    基数是0-7,并且数字钱加前缀0O或者0O表示八进制
    oct---->将其他进制的整数转换成八进制
    c.十六进制(hexadecimal)(hex)
    基数是0-9,a-f(A-F),并且数字钱加前缀0x或者0X表示十六进制

    作业

    1.下列四组数,依次为二进制、八进制和十六进制,符合要求的是(d)
    a. 12, 77, 10
    b. 12, 80, 10
    c. 11, 78, 19
    d. 11, 77, 19
    注解:a,b选项中12,,12在二进制中只有基数0,1,不会出现2,因此错误,c选项中的78在八进制中基数是0-7,不会出现8,因此错误,因此答案为d选项
    2.二进制数加法运算的基本特点是“逢二进一”,即0+0=0,0+1=1,1+0=1,1+1=0并进位。运用这一基本法则和十进制运算的类似规律,得出二进制数加法运算1001+101的结果为(c)
    a. 1001
    b. 1010
    c. 1110
    d. 1101
    注解:1001+101=1102------>进位写成1110,答案为c
    7.八进制754中的数码7对应的位权是(c)
    a. 10^2 b. 16^1 c. 8^2 d. 2^2
    注解:八进制中从低到高的位权依次为80,81,82,83..........因此7的位权为8^2,答案为c
    8.十进制数53转换成二进制数是(b)
    a. 100101
    b. 110101
    c.100100
    d.110100
    注解:53/2=26....1 26/2=13....0 13/2=6....1 6/2=3....0 3/2=1....1 1/2=0....1 合并结果为110101,答案为b
    9.(偏难)已知,十进制中的8在X进制中表示为11,即(10)8=(X)11。请问这个X进制具体为(b)进制
    a. 6
    b. 7
    c. 8
    d. 9
    注解:代入法:6进制,16^0+16^1=7 7进制 17^0+17^1=8 答案为b
    10.(偏难)二进制的1000001相当十进制的④____,二进制的100.001可以表示为④___。
    A: ① 62 ② 63 ③ 64 ④ 65
    B: ① 23+2–3 ② 22+2–2 ③ 23+2–2 ④ 22+2–3
    注解:(2)1000001=12^0+12^6=(10)65 (2)100.001=12^2+12^-3

    1. 下面定义变量正确的是(a,d)
      a. a = b = c = 10
      b. a,c = 10 (a,c = 10, 10)
      c. in = 20
      d. num = 10; t = 20
      注解:a选项从理论上来说没有错误,但是这种表达方式感觉欠妥,b选项中变量a和c应该分别赋值,如果定义参数才有这种表达方式,因此错误,c选项中变量名涉及到了in这个关键字,错误,d选项正确
    2. n = 6784,以下能够获取到7 的方法有(c、d)
      a. n / 1000 % 100
      b. n % 1000 / 100
      c. n // 100 % 10
      d. n // 10 % 100 // 10
      注解:n=6784 6784/1000%100=6.784%100=6.784 6784%1000/100=784/100=7.84
      6784//100%10=67%10=7
      6784//10%100//10=678%100//10=78//10=7
      答案为c、d
      13.以下表达式 10 / 4 + 23 // 4 * 2 - 30的计算结果是:-17.5
      注解:10/4+23//42-30=2.5+52-30=2.5+10-30=-17.5

    相关文章

      网友评论

          本文标题:千锋的第二天

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