• Python:raw_input 和 input用法


    转自:http://blog.csdn.net/kjing/article/details/7450146

    Python input和raw_input的区别

    使用input和raw_input都可以读取控制台的输入,但是input和raw_input在处理数字时是有区别的
    纯数字输入

    当输入为纯数字时

        input返回的是数值类型,如int,float
        raw_inpout返回的是字符串类型,string类型

    输入字符串为表达式

    input会计算在字符串中的数字表达式,而raw_input不会。

    如输入 “57 + 3”:

        input会得到整数60
        raw_input会得到字符串”57 + 3”

    python input的实现

    看python input的文档,可以看到input其实是通过raw_input来实现的,原理很简单,就下面一行代码:

    def input(prompt):
        return (eval(raw_input(prompt)))
    

      

    Python raw_input 读取输入值

    下面介绍了python raw_input的用法,
    使用raw_input 能够很方便的从控制台读入数据。

    1.输入字符串

    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    
    if __name__ == '__main__':
        # 13222319810101****
        nID = ''
        while 1:
            nID = raw_input("Input your id :")
            if len(nID) != len("13222319810101****"):
                print 'wring length of id,input again'
            else:
                break
    
        print 'your id is %s' % (nID)
    结果:

    2.输入整数

    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    
    if __name__ == '__main__':
        nAge = int(raw_input("input your age :
    "))
        if nAge > 0 and nAge < 120:
            print 'thanks!'
        else:
            print 'bad age'
        print 'your age is %d
    ' % nAge
    结果:

    3.输入浮点型

    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    
    if __name__ == '__main__':
        fWeight = 0.0
        fWeight = float(raw_input("input your weight
    "))
        print 'your weight is %f' % fWeight
    结果:

    4.输入16进制数据

    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    
    if __name__ == '__main__':
        nHex = int(raw_input('input hex value(like 0x20):
    '), 16)
        print 'nHex = %x,nOct = %d
    ' % (nHex, nHex)
    结果:

    5.输入8进制数据

    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    
    if __name__ == '__main__':
        nOct = int(raw_input('input oct value(like 020):
    '), 8)
        print 'nOct = %o,nDec = %d
    ' % (nOct, nOct)
    结果:

  • 相关阅读:
    Bash's Big Day
    树链剖分求lca
    Contest1814
    启发式合并
    2019 Multi-University Training Contest 10
    图论题
    vijos-记数问题
    2018届研究生招生预推免(THU,HIT)经历分享
    数细胞-swust oj
    Bone Collector-HDU
  • 原文地址:https://www.cnblogs.com/pizitai/p/6476362.html
Copyright © 2020-2023  润新知