• Python:程序练习题(二)


    Python:程序练习题(二)

    2.1温度转换程序。

     

    代码如下:

    t=input("请输入带符号的温度值(如:32C):")
    
    if t[-1] in ["C","c"]:
    
        f=1.8*float(t[0:-1])+32
    
        print("转换后的温度为:%.0fF"%f)
    
    elif t[-1] in ["F","f"]:
    
        c=(float(t[0:-1])-32)/1.8
    
        print("转换后的温度为:%.0fC"%c)
    
    else:
    
        print("输入错误!")

     

    知识点整理:

    1.t[-1]表示取输入值的倒数第一个元素,此处是取最后一个字符(C/c/F/f)。

    2.t[0:-1]表示第一个元素到倒数第二个元素的切片,简单的说,就是表示除最后一个字符以外的字符串。

    3.%.0f表示取整,%f指输出变量f

     

    运行结果:

     

     

     

    上面可以看到,只输入数字会显示错误,而只输入符号会怎么样呢?让我们试着输入一个符号,结果显示如下。

     

    出错的原因是无法将字符型变量转换为浮点型float,因此无法进行计算。

    现修改实例2.1,采用eval(input(<提示内容>))替换现有输入部分,并使输出的温度值为整数。

     

    代码如下:

    t = eval(input('请输入温度值(无单位):'))
    
    d = input('请输入单位:')
    
    if d in ['f', 'F']:
    
        c = (t - 32)/1.8
    
        print('转换后的温度为:{:.0f}C'.format(c))
    
    elif d in ['c', 'C']:
    
        f = 1.8*t + 32
    
        print('转换后的温度为:{:.0f}F'.format(f))
    
    else:
    
        print('输入错误!')

     

    运行结果:

     

    2.2汇率兑换程序。按照温度转换程序的设计思路,按照1美元=6人民币汇率编写一个美元和人民币的双向兑换程序。

     

    代码如下:

    t=input("请输入带单位的金钱数(如30¥):")
    
    if t[-1] in [""]:
    
        m=eval(t[:-1])/6
    
        print("兑换后为:{:.2f}$".format(m))
    
    elif t[-1] in ["$"]:
    
        r=6*eval(t[:-1])
    
        print("兑换后为:{:.2f}¥".format(r))
    
    else:
    
        print("输入错误!")

    知识点整理:

    1.eval(<字符串>)函数能够以Python表达式的方式解析并执行字符串,并将返回结果输出。

    2.Python语言中,字符串通过format()方法进行格式化处理。

      format方法的基本使用格式如下:

        <字符串>.format(<逗号分隔的参数>)

    print("{}".format(m)),其中{}输出的是m的值。

     

     

    运行结果:

     

     

    4.4猜数游戏。

     

    代码如下:

    import random
    
    w=0#定义w并初始化
    p=random.randint(0,100)
    N=0
    
    while w!=p:
    
        N+=1
    
        #这句不能单独拿出while循环外,否则会无限循环
        w=int(input('请输入一个0-100之间的整数:'))
    
        if w>p:
            print('遗憾,太大了!')  
        elif w<p:
            print('遗憾,太小了!')
        else:
            print('预测'+str(N)+'次,你猜中了!')
            break        

     

    知识点整理:

    1.random库采用梅森旋转算法生成伪随机数序列,提供了不同类型的随机数函数,所有函数都是基于最基本的random.random()函数扩展实现。

    2.randint(a,b)random库的常用函数之一,用于生成一个[a,b]之间的整数。

    3.str(N)是将N的数据类型转换为String类型,因为python拼接字符串比较特殊,无法自动转换数据类型。

    4.break用来跳出最内层forwhile循环,脱离该循环后程序从循环代码后继续执行。

     

     

    运行结果:

     

  • 相关阅读:
    PHP04
    PHP03
    PHP02
    PHP01
    jquery attr()方法获取input的checked属性问题
    vue案例
    js基础(数组)
    js基础
    POJ1659 可图性判定
    ZOJ3329 概率DP
  • 原文地址:https://www.cnblogs.com/BIXIABUMO/p/11600873.html
Copyright © 2020-2023  润新知