Python练习题 02

本文介绍了四个Python编程练习,包括实现用户登录系统(三次尝试机会),将整数转换为八进制、二进制和十六进制字符串,使用math库创建返回多个值的函数,以及定义一个解决一元二次方程的函数。这些练习涵盖了基础的输入输出、数值操作和函数设计等概念。
摘要由CSDN通过智能技术生成

作业1:写一个用户登陆(三次重试机会)(input输入账号和密码)

  def Login():
      i = 1
      while i <= 3:
          username = input("请输入账号:")
          password = input("请输入密码:")
          if username == 'wls'and password == '123456':
              print("欢迎登陆成功界面")
              break
          else:
             print("你的账号或密码错误")
             i = i + 1
 if __name__ == '__main__':
    Login()

作业2:把一个整数转化为八进制、二进制、十六进制表示的字符串

 num1 = 666
 print(type(num1))
 print(hex(num1))#十六进制
 print(type(hex(num1)))
 print(oct(num1))#八进制
 print(type(oct(num1)))
 print(bin(num1))#二进制
 print(type(bin(num1)))
 print(format(num1,'b'))  

作业3:利用math写一个返回多值的函数,并且能够打印出来

 
  import math
  def moving(x,y,step,angle=0):
      nx = x + step*math.cos(angle)
      ny = y + step * math.sin(angle)
      return nx  ,  ny
  if __name__ == '__main__':
      x,y  = moving(20,20,50,111)
      print(x,y)
      r = moving(20,20,50,111)
     print(type(r))

作业4:定义一个函数sam(a,b,c),接收3个参数,返回一元二次方程

  a = 2
  print(isinstance(a,int))
  print(isinstance(a,str))
  print(isinstance(a,(str,int,list,tuple)))
  import math
  def sam(a,b,c):
      if not (isinstance(a,(int,float)))and(isinstance(b,(int,float)))and(isinstance(c,(int,float))):
          raise TypeError("a,b,c不全是数字")
     # if not isinstance(a,(int,float)):
     #     raise TypeError("a不是一个数字")
     # if not isinstance(b,(int,float)):
     #     raise TypeError("a不是一个数字")
     # if not isinstance(c,(int,float)):
     #     raise TypeError("a不是一个数字")
     if a == 0:
         return '请输入不为0的值'
     else:
         d = b*b - 4*a*c
         if d < 0:
             return '无解'
         elif d == 0:
             x = -b/(2*a)
         else:
             x1 = (-b+math.sqrt(d))/(2*a)
             x2 = (-b-math.sqrt(d))/(2*a)
             return x1,x2
 if __name__ == '__main__':
     a = float(input("a:"))
     b = float(input("b:"))
     c = float(input("c:"))
     print(sam(a,b,c))
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值