前面几期我讲了一些关于Python编程的基础知识,下面我们来看看如何用这些基础知识来解决实际问题的∶
问题1﹕让电脑告诉我们,昨天是几月几号,并同时显示出未来两天的日期
解决思路∶
首先要获取今天的日期
将今天的日期转换为日期型数据,并参与运算
计算昨天、明天、后天的日期
#Quse1-1.py
import datetime#调用datetime模块
today=datetime.date.today()
one=datetime.timedelta(days=1)#timedelta函数代表两个datetime之间的时间差
yestoday=today-1
tomorrow=today+1
the day after tomorrow=today+2
print yestoday,tomorrow,the day after tomorrow
运行结果
2018-11-22,2018-11-24,2018-11-25
问题二∶工业生产中,自动化生产越来越普及,一台雕刻机刀头,从A点移动到B点,计算刀头移动的距离
解题思路∶两点都在空气中,这时候总不能拿尺子量吧(如果能拿尺子量的准,我宁愿拿尺子,哈哈),根据解析几何知识,两点间的距离可以由两点间的距离公式求出
Quse1-2.py
import.math()#调用math模块
x1,y1=input(‘x1,y1=’)
x2,y2=input(‘x2,y2=’)
L=math.sqrt((x2-x1)**2+(y2-y1)**2)
print L
输入数据,运行程序∶
x1,y1=1,3
x,,y2=4,7
L=5
问题三∶输入任意三个英语单词,按照英语词典顺序进行排列
(#Excel中经常用到自动排序,你知道它是用的什么原理吗)
解题思路∶英语单词输入后,需要比较任意两个单词的大小,需要时交换两个单词的排序位置,三个单词分别用X,Y,Z代替
假设∶X>Y,那么排序是Y X Z或Z Y X ,否则是X Y Z或Z X Y
假设∶X>Z,那么排序是Y Z X或Z Y X ,否则是X Y Z或Y X Z
循环执行以上判断,直到排序正确,程序终止
代码如下∶
Ques1-3.py
s=input(‘x,y,z’)
x,y,z=s.split(‘,’)#把英文单词用逗号分离,并返回字母组成的列表
if x>y∶
x,y=y,x
if x>z∶
x,z=z,x
if y>z∶
y,z=z,y
print x,y,z
输入单词并运行程序∶
x,y,z=‘you,see,cat’
cat,see,you
今天的分享就到这儿了,我们下期见...
关注公众号,每天可以领红包