• python 字符串,数学之间的不可描述的关系


    首先说一下输入:

    >>> a=raw_input(" ")
    1.234
    >>> a
    '1.234'
    >>> 
    可以看到使用raw_input()输入的数字(整形或则浮点型都被当成了字符串)
    
    ##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.输入字符串
    
    #13222319810101****
    nID = ''
    while 1:
        nID = raw_input("Input your id plz")
        if len(nID) != len("13222319810101****"):
            print 'wring length of id,input again'
        else:
            break
     
    print 'your id is %s' % (nID)
    
    2.输入整数
    
    nAge = int(raw_input("input your age plz:
    "))
    if nAge > 0 and nAge < 120:
        print 'thanks!'
    else:
        print 'bad age'
    print 'your age is %d
    ' % nAge
    
    3.输入浮点型
    
    fWeight = 0.0
    fWeight = float(raw_input("input your weight
    "))
    print 'your weight is %f' % fWeight
    
    4.输入16进制数据
    
    nHex = int(raw_input('input hex value(like 0x20):
    '),16)
    print 'nHex = %x,nOct = %d
    ' %(nHex,nHex)
    
    5.输入8进制数据
    
    nOct = int(raw_input('input oct value(like 020):
    '),8)
    print 'nOct = %o,nDec = %d
    ' % (nOct,nOct)
    
    

    那么,怎么转化成你想要的类型呢?

    例如: a="123.456"
    如果你想把它转化成浮点型可以使用以下几种方法:
    1.可以直接使用float(a)转化
    >>> a="123.456"
    >>> float(a)
    123.456
    >>> 
    2.可以使用string模块转化
    import string
    >>> a="123.456"
    >>> string.atof(a)
    123.456
    
    又如: a="555"
    如果想转化成整形:
    1.直接使用int(a)
    >>> a="555"
    >>> int(a)
    555
    >>> 
    2.使用string模块
    >>> import string
    >>> a="555"
    >>> string.atoi(a)
    555
    >>> 
    
    ###那么如果如何把数字转化成字符串呢?
    列: a=123
    1.使用控制格式的方法
    >>> a=123
    >>> a= '%d' %a
    >>> a
    '123'
    a就转化成字符串了
    
    2.使用str(a)
    >>> a=123
    >>> str(a)
    '123'
    
    
    ###字母与ASCII码的转换
    1.ASCII码转换为相应字符
    >>> chr(97)
    'a'
    
    2.字符转换为相应ASCII码
    >>> ord('a')
    97
    
    

    再说一下python数字的各种格式控制

    ###首先认识几个函数
    round(number[, ndigits])
    round 对传入的数据进行四舍五入,如果ngigits不传,默认是0(就是说保留整数部分).ngigits<0 的时候是来对整数部分进行四舍五入,返回的结果是浮点数.
    
    
    ###1.如何实现数字的四舍五入呢?
    例如: a=123.456
    >>> round(a,3)
    123.456
    >>> round(a,2)
    123.46
    >>> round(a,1)
    123.5
    >>> round(a)
    123.0
    
    **注意:  只有在整数部分是奇数的时候, 小数部分才逢5进1; 偶数时逢5舍去
    >>> a=2.55
    >>> round(a,1)
    2.5
    
    
  • 相关阅读:
    编写屏幕保护程序
    C++调用JS函数
    connected standby
    用户层APC队列使用
    WebBrowser2控件使用
    UUID
    网络过滤驱动
    windows短路径转换成长路径
    解析快捷方式指向的文件
    获取进程占用的内存
  • 原文地址:https://www.cnblogs.com/nyist-xsk/p/7514018.html
Copyright © 2020-2023  润新知