美文网首页我爱编程
Python学习目录与练习

Python学习目录与练习

作者: 酬请啊 | 来源:发表于2018-01-03 17:44 被阅读0次

    Python学习目录

    • 第一章 安装Python

      1. 选择Python的版本
        • 2.x与3.x的区别
      2. Windows上安装Python
      3. 第一个Python程序

        练习:在终端cmd里面成功运行 "Hello World!"

    • 第二章 Python的变量和数据类型

      1. Python中的数据类型

        练习:在编辑器中,完成练习
        计算十进制整数12345和十六进制整数0x12fd2之和
        请用字符串表示出 Learn Python Hard
        请计算以下表达式的布尔值(注意 == 表示判断是否相等):
        100<99
        0xff == 255

      2. Python中的print语句

        练习:请用两种方式打印出Hello,Python(提示:采用拼接)

      3. Python的注释

        练习:将之前编写的一个Hello,Python 语句注释掉

      4. Python中什么是变量

        练习:等差数列可以定义为每一项与它的前一项的差等于一个整数,可以用变量x1表示等差数列的第一项,用d表示公差,请计算数列1 4 7 10 13 16 19 ...前100项的和
        提示:
        x1 = 1 表示第一项的值
        d = 3 表示公差
        n = 100 表示前100项
        x100 表示第100项的值
        首先计算第N项的值:
        x100 = x1 + (n - 1) * d
        再根据公式
        求和 s = (x1 + x100) * n / 2
        print可以把变量的值打印出来。

      5. Python中定义字符串

        练习: 请将下面两行内容用Python的字符串表示并打印出来:

         Python was started in 1989 by 'Guido'.
         Python is free and easy to learn.   
        
      6. Python中的raw字符串与多行字符串

        练习:请将下面的字符串用r'''...'''的形式改写,并用print打印出来:
        '\"To be, or not to be\": that is the question.\nWhether it\'s nobler in the mind to suffer.'

      7. Python中的Unicode字符串

        练习:用多行Unicode字符串表示下面的唐诗并打印:

         静夜思
         床前明月光,
         疑是地上霜。
         举头望明月,
         低头思故乡。
        
      8. Python中整数和浮点数

        练习:请计算 2.5+10/4,并解释计算结果为什么不是期望的5.0?请修复上述运算,使得计算结果是5.0

      9. Python中的布尔类型

        练习:请运行如下代码,并解释打印的结果:

         a = 'python'
         print 'hello,', a or 'world'
         b = ''
         print 'hello,', b or 'world'
        
    • 第三章 List和Tuple类型

      1. Python创建list

        练习:假设班里有3名同学:Adam,Lisa和Bart,他们的成绩分别是 95.5,85 和 59,请按照 名字, 分数, 名字, 分数... 的顺序按照分数从高到低用一个list表示,然后打印出来。

      2. Python按照索引访问list

        练习:三名同学的成绩可以用一个list表示:

         L = [95.5, 85, 59]
        

        请按照索引分别打印出第一名、第二名、第三名,同时测试 print L[3]。

      3. Python之倒序访问list

        练习:三名同学的成绩可以用一个list表示:

         L = [95.5, 85, 59]
        

        请按照倒序索引分别打印出倒数第一、倒数第二、倒数第三。

      4. Python之添加新元素

        练习:假设新来一名学生Paul,Paul 同学的成绩比Bart好,但是比Lisa差,他应该排到第三名的位置,请用代码实现。

      5. Python从list删除元素

        练习:有一个 list 如下:

         L = ['Adam', 'Lisa', 'Paul', 'Bart']
        

        Paul的索引是2,Bart的索引是3,如果我们要把Paul和Bart都删掉,请解释下面的代码为什么不能正确运行:

         L.pop(2)
         L.pop(3)
        

        怎样调整代码可以把Paul和Bart都正确删除掉?

      6. Python中替换元素

        练习:班里的同学按照分数排名是这样的:

         L = ['Adam', 'Lisa', 'Bart']
        

        但是,在一次考试后,Bart同学意外取得第一,而Adam同学考了倒数第一。
        请通过对list的索引赋值,生成新的排名。

      7. Python之创建tuple

        练习:创建一个tuple,顺序包含0 - 9这10个数。

      8. Python之创建单元素tuple

        练习:请指出下面代码为什么没有创建出包含一个学生的 tuple:

         t = ('Adam')
         print t
        

        请修改代码,确保 t 是一个tuple。

      9. Python之"可变"的tuple

        练习:定义了tuple:

         t = ('a', 'b', ['A', 'B'])
        

        由于 t 包含一个list元素,导致tuple的内容是可变的。能否修改上述代码,让tuple内容不可变?

    • 第四章 条件判断和循环

      1. Python之if语句

        练习:如果成绩达到60分或以上,视为passed。
        假设Bart同学的分数是75,请用if语句判断是否能打印出 passed:

      2. Python之if-else

        练习:如果成绩达到60分或以上,视为passed,否则视为failed。
        假设Bart同学的分数是55,请用if语句打印出 passed 或者 failed:

      3. Python之if-elif

        练习:如果按照分数划定结果:
        90分或以上:excellent
        80分或以上:good
        60分或以上:passed
        60分以下:failed
        请编写程序根据分数打印结果。

      4. Python之for循环

        练习:班里考试后,老师要统计平均成绩,已知4位同学的成绩用list表示如下:
        L = [75, 92, 59, 68]
        请利用for循环计算出平均成绩。

      5. Python之while循环

        练习:利用while循环计算100以内奇数的和。

      6. Python之break退出循环

        练习:利用 while True 无限循环配合 break 语句,计算 1 + 2 + 4 + 8 + 16 + ... 的前20项的和。

      7. Python之continue继续循环

        练习:对已有的计算 0 - 100 的while循环进行改造,通过增加 continue 语句,使得只计算奇数的和:

         sum = 0
         x = 1
         while True:
             sum = sum + x
             x = x + 1
             if x > 100:
                 break
         print sum
        
      8. Python之多重循环

        练习:对100以内的两位数,请使用一个两重循环打印出所有十位数数字比个位数数字小的数,例如,23(2 < 3)。

    • 第五章 Dict和Set类型

      1. Python之什么是dict

        练习;新来的Paul同学成绩是 75 分,请编写一个dict,把Paul同学的成绩也加进去。

         d = {
             'Adam': 95,
             'Lisa': 85,
             'Bart': 59
         }
        
      2. Python之访问dict

        练习:根据如下dict:

         d = {
             'Adam': 95,
             'Lisa': 85,
             'Bart': 59
         }
        

        请打印出:

         Adam: 95
         Lisa: 85
         Bart: 59
        
      3. Python中dict的特点

        练习:请设计一个dict,可以根据分数来查找名字,已知成绩如下:

         Adam: 95,
         Lisa: 85,
         Bart: 59.
        
      4. Python更新dict

        练习:请根据Paul的成绩 72 更新下面的dict:

         d = {
             95: 'Adam',
             85: 'Lisa',
             59: 'Bart'
         }
        
      5. Python遍历dict

        练习:请用 for 循环遍历如下的dict,打印出 name: score 来。

         d = {
             'Adam': 95,
             'Lisa': 85,
             'Bart': 59
         }
        
      6. Python中什么是Set

        练习:请用set表示班里的4位同学:

         Adam, Lisa, Bart, Paul
        
      7. Python之访问Set

        练习:由于上述set不能识别小写的名字,请改进set,使得 'adam' 和 'bart'都能返回True。

      8. Python之Set的特点

        练习:月份也可以用set表示,请设计一个set并判断用户输入的月份是否有效。
        月份可以用字符串'Jan', 'Feb', ...表示。

      9. Python之遍历Set

        练习:请用 for 循环遍历如下的set,打印出 name: score 来。
        s = set([('Adam', 95), ('Lisa', 85),('Bart', 59)])

      10. Python之更新Set

        练习:针对下面的set,给定一个list,对list中的每一个元素,如果在set中,就将其删除,如果不在set中,就添加进去。

        s = set(['Adam', 'Lisa', 'Paul'])
        L = ['Adam', 'Lisa', 'Bart', 'Paul']
        
    • 第六章 函数

      1. Python之什么是函数

        练习:根据战阶所讲,自己写几个函数试试效果

      2. Python之调用函数

        练习:sum()函数接受一个list作为参数,并返回list所有元素之和。请计算 11 + 22 + 33 + ... + 100100。

      3. Python之编写函数

        练习:请定义一个 square_of_sum 函数,它接受一个list,返回list中每个元素平方的和。

      4. Python函数之返回多值

        练习:一元二次方程的定义是:ax² + bx + c = 0
        请编写一个函数,返回一元二次方程的两个解。
        注意:Python的math包提供了sqrt()函数用于计算平方根。

      5. Python之递归函数

        练习:汉诺塔 (http://baike.baidu.com/view/191666.htm) 的移动也可以看做是递归函数。
        我们对柱子编号为a, b, c,将所有圆盘从a移到c可以描述为:
        如果a只有一个圆盘,可以直接移动到c;
        如果a有N个圆盘,可以看成a有1个圆盘(底盘) + (N-1)个圆盘,首先需要把 (N-1) 个圆盘移动到 b,然后,将 a的最后一个圆盘移动到c,再将b的(N-1)个圆盘移动到c。
        请编写一个函数,给定输入 n, a, b, c,打印出移动的步骤:
        move(n, a, b, c)
        例如,输入 move(2, 'A', 'B', 'C'),打印出:
        A --> B
        A --> C
        B --> C

      6. Python之定义默认参数

        练习:请定义一个 greet() 函数,它包含一个默认参数,如果没有传入,打印 'Hello, world.',如果传入,打印 'Hello, xxx.'

      7. Python之定义可变参数

        练习:请编写接受可变参数的 average() 函数。

    • 第七章 切片

      1. 对list进行切片

        练习:range()函数可以创建一个数列:
        >>> range(1, 101) [1, 2, 3, ..., 100]
        请利用切片,取出:
        前10个数;
        3的倍数;
        不大于50的5的倍数。

      2. 倒序切片

        练习:利用倒序切片对 1 - 100 的数列取出:
        最后10个数
        最后10个5的倍数。

      3. 对字符串切片

        字符串有个方法 upper() 可以把字符变成大写字母:
        >>> 'abc'.upper() 'ABC'
        但它会把所有字母都变成大写。请设计一个函数,它接受一个字符串,然后返回一个仅首字母变成大写的字符串。
        提示:利用切片操作简化字符串操作。

    • 第八章 迭代

      1. 什么是迭代

        练习:请用for循环迭代数列 1-100 并打印出7的倍数。

      2. 索引迭代

        练习:zip()函数可以把两个 list 变成一个 list:
        >>> zip([10, 20, 30], ['A', 'B', 'C']) [(10, 'A'), (20, 'B'), (30, 'C')]
        在迭代 ['Adam', 'Lisa', 'Bart', 'Paul'] 时,如果我们想打印出名次 - 名字(名次从1开始),请考虑如何在迭代中打印出来。
        >提示:考虑使用zip()函数和range()函数

      3. 迭代dict的value

        练习:给定一个dict:
        d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59, 'Paul': 74 }
        请计算所有同学的平均分。

      4. 迭代dict的key和value

        练习:请根据dict:
        d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59, 'Paul': 74 }
        打印出 name : score,最后再打印出平均分 average : score。

    • 第九章 列表生成式

      1. 生成列表

        练习:请利用列表生成式生成列表 [1x2, 3x4, 5x6, 7x8, ..., 99x100]

      2. 复杂表达式

        练习:在生成的表格中,对于没有及格的同学,请把分数标记为红色。
        提示:红色可以用 <td style="color:red"> 实现。
        [图片上传失败...(image-60ef23-1514972623008)]

      3. 条件过滤

        练习:请编写一个函数,它接受一个 list,然后把list中的所有字符串变成大写后返回,非字符元素将被忽略。
        提示:
        isinstance(x, str) 可以判断变量 x 是否是字符串;
        字符串的 upper() 方法可以返回大写的字母。

      4. 多层表达式

        练习:利用 3 层for循环的列表生成式,找出对称的 3 位数。例如,121 就是对称数,因为从右到左倒过来还是 121。

    相关文章

      网友评论

        本文标题:Python学习目录与练习

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