zoukankan      html  css  js  c++  java
  • 论raw_input与input之间的缠缠绵绵

    例子1:py2.7中,raw_input输入整数,返回的是str。

    1 input1=raw_input("raw_input:")
    2 print(type(input1))
    3 print(input1)
    4 结果如下:
    5 raw_input:23
    6 <type 'str'>
    7 23

    仍然是例子1,输入字符串,返回还是str。

    1 结果
    2 raw_input:ss
    3 <type 'str'>
    4 ss

    仍然是例子1,输入表达式,返回还是str,输入的表达式不换算,这货就是这么倔强。

    1 结果raw_input:1+1
    2 <type 'str'>
    3 1+1

    例子2:py2.7中,input输入整数,返回的是int,说明支持输入数字。

    1 input1=input("input:")
    2 print(type(input1))
    3 print(input1)
    4 结果
    5 raw_input:23
    6 <type 'int'>
    7 23

    仍然是例子2,输入ss,返回报错,说明不支持。

    1 结果
    2   File "D:/kevin/Administrator/PycharmProjects/s12/test.py", line 31, in <module>
    3     input1=input("input:")
    4   File "<string>", line 1, in <module>
    5 NameError: name 'ss' is not defined

    仍然是例子2,输入ss,返回str,说明输入字符要加引号。

    1 结果
    2 input:"ss"
    3 <type 'str'>
    4 ss

    仍然是例子2,输入1+1,返回int 2,而且输入的表达式会自动换算。

    1 结果
    2 input:1+1
    3 <type 'int'>
    4 2

    查看 Built-in Functions ,得知:

    input([prompt])

        Equivalent to eval(raw_input(prompt)) 

      input用完 raw_input() 之后再调用 eval() 函数,eval函数将字符串当成有效Python表达式来求值,并返回计算结果

    总结:raw_input可以输入任何字符串,表达式不换算;

       input要输入有效表达式。

         end,回家洗洗睡吧。。

    运维虐我千万遍,我对运维如初恋。
  • 相关阅读:
    优雅的windowsC++项目的配置
    C++实现编码转换
    C++读取配置文件
    完全依赖QML实现播放器
    记一次和“N+1”的擦肩而过
    FFmpeg4.0笔记:采集系统声音
    FFmpeg4.0笔记:采集桌面
    FFmpeg4.0笔记:封装ffmpeg的解封装功能类CDemux
    SDL2:封装媒体显示播放Csdl2
    FFmpeg4.0笔记:封装ffmpeg的音频重采样功能类CSwr
  • 原文地址:https://www.cnblogs.com/kevincaptain/p/5588226.html
Copyright © 2011-2022 走看看