python绘图100例_Python练习实例100例(从简入难)16-20

Python学习中心2020-11-21 11:03:00

相信有很多人都在努力地自学着Python,但自学过程中总是看懂了却不会做。这就像学生时期老师讲过了,觉得听懂了,但一看题就懵了。

在自学任何一门软件或是编程语言的过程中,最重要的是结合教程去进行实践训练,毕竟“实践才是检验真理的唯一标准”。

今天给大家带来Python从初级入门到精进的练习实例共100例,每篇五道题保持篇幅不会过长,大家练习也循序渐进、松弛有度。并且还会附上题目程序的的源代码,供大家参考,大家初期可以“照猫画虎”去发现其编程的目的及规律,从而更好地理解。

Python 练习实例16

题目:输出指定格式的日期。

程序分析:使用 datetime 模块。

程序源代码:

#!/usr/bin/python

# -*- coding: UTF-8 -*-

import datetime

if __name__ == '__main__':

# 输出今日日期,格式为 dd/mm/yyyy。更多选项可以查看 strftime() 方法

print(datetime.date.today().strftime('%d/%m/%Y'))

# 创建日期对象

miyazakiBirthDate = datetime.date(1941, 1, 5)

print(miyazakiBirthDate.strftime('%d/%m/%Y'))

# 日期算术运算

miyazakiBirthNextDay = miyazakiBirthDate + datetime.timedelta(days=1)

print(miyazakiBirthNextDay.strftime('%d/%m/%Y'))

# 日期替换

miyazakiFirstBirthday = miyazakiBirthDate.replace(year=miyazakiBirthDate.year + 1)

print(miyazakiFirstBirthday.strftime('%d/%m/%Y'))

Python 练习实例17

题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。

程序分析:利用 while 或 for 语句,条件为输入的字符不为 '\n'。

程序源代码(while循环&for循环):

#!/usr/bin/python

# -*- coding: UTF-8 -*-

import string

s = raw_input('请输入一个字符串:\n')

letters = 0

space = 0

digit = 0

others = 0

i=0

while i < len(s):

c = s[i]

i += 1

if c.isalpha():

letters += 1

elif c.isspace():

space += 1

elif c.isdigit():

digit += 1

else:

others += 1

print 'char = %d,space = %d,digit = %d,others = %d' % (letters,space,digit,others)

#!/usr/bin/python

# -*- coding: UTF-8 -*-

import string

s = raw_input('请输入一个字符串:\n')

letters = 0

space = 0

digit = 0

others = 0

for c in s:

if c.isalpha():

letters += 1

elif c.isspace():

space += 1

elif c.isdigit():

digit += 1

else:

others += 1

print 'char = %d,space = %d,digit = %d,others = %d' % (letters,space,digit,others)

Python 练习实例18

题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制。

程序分析:关键是计算出每一项的值。

程序源代码:

#!/usr/bin/python

# -*- coding: UTF-8 -*-

Tn = 0

Sn = []

n = int(raw_input('n = '))

a = int(raw_input('a = '))

for count in range(n):

Tn = Tn + a

a = a * 10

Sn.append(Tn)

print Tn

Sn = reduce(lambda x,y : x + y,Sn)

print "计算和为:",Sn

Python 练习实例19

题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出1000以内的所有完数。

程序分析:请参照程序Python练习实例14。

程序源代码:

#!/usr/bin/python

# -*- coding: UTF-8 -*-

from sys import stdout

for j in range(2,1001):

k = []

n = -1

s = j

for i in range(1,j):

if j % i == 0:

n += 1

s -= i

k.append(i)

if s == 0:

print j

for i in range(n):

stdout.write(str(k[i]))

stdout.write(' ')

print k[n]

Python 练习实例20

题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?

程序分析:无

程序源代码:

#!/usr/bin/python

# -*- coding: UTF-8 -*-

tour = []

height = []

hei = 100.0 # 起始高度

tim = 10 # 次数

for i in range(1, tim + 1):

# 从第二次开始,落地时的距离应该是反弹高度乘以2(弹到最高点再落下)

if i == 1:

tour.append(hei)

else:

tour.append(2*hei)

hei /= 2

height.append(hei)

print('总高度:tour = {0}'.format(sum(tour)))

print('第10次反弹高度:height = {0}'.format(height[-1]))

祝大家Python学习顺利!没有 B U G~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值