python练习题目

1.查看本机安装python版本

2.用python打印"Hello World",给出源代码和执行结果

a.命令行窗口输出(前提:python程序加入PATH系统环境变量)

b.python.exe程序输出

3.用python计算10/3,发出截图

print(10/3)

4.查看通过pip安装python module

利用pip安装matplotlib模块,matplotlib是一个Python的2D绘图库

 查看matplotlib模块信息

 5.将用pycharm创建一个工程项目,其中包含Dog.py文件,发截图

源代码:

class Dog():
def __init__(self,name,age):
self.name=name
self.age=age

def sit(self):
# 小狗被命令下蹲
print(self.name.title()+ " is now sitting.")

def roll_over(self):
# 小狗被命令打滚
print(str(self.age) + " 岁 " + self.name + " rolled over!")

my_dog = Dog('willie',25)
print(my_dog.sit())
print(my_dog.roll_over())
运行结果

 1.比如在游戏中经常需要从一个点移动到另一个点,给出坐标、位移和角度,就可以计算出新的坐标:

# math包提供了sin()和 cos()函数,我们先用import引用它:

import math
def move(x, y, step, angle):
    nx = x + step * math.cos(angle)
    ny = y - step * math.sin(angle)
    return nx, ny

这样我们就可以同时获得返回值:

>>> x, y = move(100, 100, 60, math.pi / 6)
>>> print x, y
151.961524227 70.0

但其实这只是一种假象,Python函数返回的仍然是单一值:

>>> r = move(100, 100, 60, math.pi / 6)
>>> print r
(151.96152422706632, 70.0)

用print打印返回结果,原来返回值是一个tuple!
但是,在语法上,返回一个tuple可以省略括号,而多个变量可以同时接收一个tuple,按位置赋给对应的值,所以,Python的函数返回多值其实就是返回一个tuple,但写起来更方便。


range()函数可以创建一个数列:

>>> range(1, 101)
[1, 2, 3, ..., 100]

请利用切片,取出:

1. 前10个数;
2. 3的倍数;
3. 不大于50的5的倍数。

L = range(1, 101)

print L[0:10]
print L[2::3]
print L[4:51:5]

2.倒序切片

对于list,既然Python支持L[-1]取倒数第一个元素,那么它同样支持倒数切片,试试:

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

>>> L[-2:]
['Bart', 'Paul']

>>> L[:-2]
['Adam', 'Lisa']

>>> L[-3:-1]
['Lisa', 'Bart']

>>> L[-4:-1:2]  --第三个参数2:每个两个数取一个,也即取数之间间隔1
['Adam', 'Bart']

记住倒数第一个元素的索引是-1。倒序切片包含起始索引,不包含结束索引。

3.迭代dict的key和value

我们了解了如何迭代 dict 的key和value,那么,在一个 for 循环中,能否同时迭代 key和value?答案是肯定的。

首先,我们看看 dict 对象的 items() 方法返回的值:

>>> d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 }
>>> print d.items()
[('Lisa', 85), ('Adam', 95), ('Bart', 59)]

可以看到,items() 方法把dict对象转换成了包含tuple的list,我们对这个list进行迭代,可以同时获得key和value:

>>> for key, value in d.items():
...     print key, ':', value
...
Lisa : 85
Adam : 95
Bart : 59

和 values() 有一个 itervalues() 类似, items() 也有一个对应的 iteritems(),iteritems() 不把dict转换成list,而是在迭代过程中不断给出 tuple,所以, iteritems() 不占用额外的内存。





原文地址:https://www.cnblogs.com/tanxiaojun/p/10686120.html