Python练习题

Python

例1:

dayup, dayfactor = 1.0, 0.01
for i in range(365):
    if i % 7 in [6,0]:
        dayup = dayup * (1 - dayfactor)
    else:
        dayup = dayup * (1 + dayfactor)
print("向上5天向下2的力量:{:.2f}.".format(dayup))

在理解代码例1代码的基础上解决问题:一年365天,初始水平为1.0,每工作一天水平增加1%,不工作时水平不下降,一周连续工作6天。编写程序计算,一年后能力值是多少?

代码实现:

dayup, dayfactor = 1.0, 0.01
for i in range(365):
    if i % 7 in [0,7]:
        dayup = dayup
    else:
        dayup = dayup * (1 + dayfactor)
print("一年后能力值是:{:.2f}.".format(dayup))

题目1:将字符串“这是一个很长的字符串”以宽度25位居中,并用“*”号填充输出。


代码实现:
s = "这是一个很长的字符串"
print("{0:*^25}".format(s))

题目2: 格式化输出389的二进制、八进制、十进制、十六进制的表达式,以及对应的Unicode字符。
代码实现:
print('二进制:{:b}'.format(389))
print('八进制:{:o}'.format(389))
print('十进制:{:d}'.format(389))
print('十六进制:{:x}'.format(389))
print('Unicode字符:{:c}'.format(389))

题目3:格式化输出0.002178对应的科学表示法形式,保留4位有效位的标准浮点形式以及。

代码实现:

f = 0.002178
print("科学表示法:{0:e},标准浮点:{0:.4f},百分形式:{0:.2%}".format(f))

题目4:查找字符串中每个字符的第一次出现,将其打印出来。 text = '''人生苦短,我用python,python是面向对象编程的语言,简单易懂,相信我们学完python会有很大收获'''

代码实现:

text = '''人生苦短,我用python,python是面向对象编程的语言,简单易懂,相信我们学完python会有很大收获'''
list = text.strip()
for i in range(len(list)):
     if i != text.find(list[i]):
         continue
     print("字符:{},第一出现的位置为:{}".format(list[i],text.find(list[i])))

题目5:给一个字符串,统计其中的数字、字母和其他类型字符的个数. 比如字符串”124mid-=”,输出:数字=3,字母=3,其他=2。

代码实现:

x = '123mid-='
num , char ,d = 0,0,0
for i in x:
    if i.isdigit():
        num = num+1
    elif i.isalpha():
         char = char+1
    else:
        d = d+1
 print("数字={},字母={},其他={}".format(num ,char, d))

例2:
(注意Python环境3.8不支持time.clock)

 import time
 scale = 50
 print("执行开始".center(scale//2, "-"))
 t = time.perf_counter() # 版本有所区别3.7版本用time.clock
 for i in range(scale+1):
     a = '*' * i
     b = '.' * (scale - i)
     c = (i / scale) * 100
     t -= time.perf_counter()
     print("\r{:^3.0f}%[{}->{}]{:.2f}s".format(c, a, b, -t), end='')
     time.sleep(0.05)
 print("\n"+"执行结束".center(scale//2, '-'))

仿照例2,打印如下形式的进度条。
在这里插入图片描述

 import time
 scale = 10
 print("执行开始".center(scale//2, "-"))
 t = time.perf_counter()
 for i in range(scale+1):
     a = '**' * i
     b = '.' * (scale - i)
     c = (i / scale) * 100
     t -= time.perf_counter()
     print("\rStaring[{}->{}]Done!".format(a, b), end='')
     time.sleep(0.1)
 print("\n"+"执行结束".center(scale//2, '-'))

题目6:type函数使用
分别打印出以下变量属于什么类型,并进行理解。
在这里插入图片描述

代码实现:

a1 = 'python'
a2 = 3
a3 = 1,2,3,4
a4 = 3,
a5 = (1)
a6 = (1,)
a7 = [1]
a8 = [1,]
a9 ={1}
a10 ={1:2}

x = [a1,a2,a3,a4,a5,a6,a7,a8,a9,a10]
for i in range(10):
    y = x[i]
    print("a{}的类型是{}".format(i+1,type(y)))
  • 3
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

又菜又爱巻

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值