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)))

(0)

相关推荐

  • Python fileinput模块使用介绍

    fileinput模块提供处理一个或多个文本文件的功能,可以通过使用for循环来读取一个或多个文本文件的所有行.它的工作方式和readlines很类似,不同点在于它不是将全部的行读到列表中而是创建了一个xreadlines对象. 下面是fileinput模块中的常用函数: input() #返回能够用于for循环遍历的对象 filename() #返回当前文件的名称 lineno() #返回当前已经读取的行的数量(或者序号) filelineno() #返回当前读取的行的行号 isfirstli

  • python使用fileinput模块实现逐行读取文件的方法

    本文实例讲述了python使用fileinput模块实现逐行读取文件的方法.分享给大家供大家参考.具体实现方法如下: #-------------------------------- # Name: read_lines.py # Author: Kevin Harris # Last Modified: 02/13/04 # Description: This Python script demonstrates # how to use fileinput to read # each l

  • Python2中的raw_input() 与 input()

    这两个均是 python 的内建函数,通过读取控制台的输入与用户实现交互.但他们的功能不尽相同.举两个小例子. >>> raw_input_A = raw_input("raw_input: ") raw_input: abc >>> input_A = input("Input: ") Input: abc Traceback (most recent call last): File "<pyshell#1&g

  • Python内建函数之raw_input()与input()代码解析

    这两个均是 python 的内建函数,通过读取控制台的输入与用户实现交互.但他们的功能不尽相同.举两个小例子. >>> raw_input_A = raw_input("raw_input: ") raw_input: abc >>> input_A = input("Input: ") Input: abc Traceback(most recent call last): File "<pyshell#1>

  • 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的实现 看py

  • Python中input与raw_input 之间的比较

    Python中input与raw_input 之间的比较 input和raw_input均可以接收输入,其差别如下所示: #input假设用户输入的是合法的Python表达式 >>> name = input("what is your name?") what is your name?ZJ Traceback (most recent call last): File "<stdin>", line 1, in <module

  • python中input()与raw_input()的区别分析

    我们来看input的源码 def input(prompt): return eval(raw_input(prompt)) 其实input也是调用了raw_input,只是做了eval处理 而eval有什么作用呢? input:会根据用户的输入来做类型的转换 raw_input:则会把用户的输入都作为一个字符串来处理 下面是详细的补充: 首先,我们知道input()和raw_input()都是用来获取控制台的输入,当然输入的时候可以加上输入提示信息: 复制代码 代码如下: a = raw_in

  • 深入理解Python中的 __new__ 和 __init__及区别介绍

    本文的目的是讨论Python中 __new__ 和 __ini___ 的用法. __new__ 和 __init__ 的区别主要表现在:1. 它自身的区别:2. 及在Python中新式类和老式类的定义. 理解 __new__ 和 __init__ 的区别 这两个方法的主要区别在于:__new__ 负责对象的创建而 __init__ 负责对象的初始化.在对象的实例化过程中,这两个方法会有些细微的差别,表现于:如何工作,何时定义. Python中两种类的定义方式 Python 2.x 中类的定义分为

  • python中 _、__、__xx__()区别及使用场景

    理论 Python中不存在真正的私有方法.为了实现类似于c++中私有方法,可以在类的方法或属性前加一个"_"单下划线,意味着该方法或属性不应该去调用,它并不属于API.但是,这只是一个形式上的约定,python并不阻止调用. __双下划线的作用是避免覆盖其内容,实现的机制是在带有双下划线的方法或属性前加上_类名的标识.由于,python自动对方法和属性进行了改写,所以直接调用带有双下划线的方法是调用不到的. "xx"经常是操作符或本地函数调用的magic metho

  • Python中input()函数的用法实例小结

    目录 一:input()函数的输入机制 二:input()函数常涉及的强制类型转换 三:带提示的input()函数及其常见问题 四:利用input()一次性输入多个变量值 附:input()函数结果的强制转换 总结 一:input()函数的输入机制 我们编写的大部分程序,都需要读取输入并对其进行处理,而基本的输入操作是从键盘键入数据.Python从键盘键入数据,大多使用其内置的input()函数.但是,不同于程序设计初学者常接触的C和C++,我们不需要在输入之时规定变量的类型.相反,我们可以非常

  • Python中set与frozenset方法和区别详解

    set(可变集合)与frozenset(不可变集合)的区别: set无序排序且不重复,是可变的,有add(),remove()等方法.既然是可变的,所以它不存在哈希值.基本功能包括关系测试和消除重复元素. 集合对象还支持union(联合), intersection(交集), difference(差集)和sysmmetric difference(对称差集)等数学运算. sets 支持 x in set, len(set),和 for x in set.作为一个无序的集合,sets不记录元素位

  • 对python 中re.sub,replace(),strip()的区别详解

    1.strip(): str.strip([chars]);去除字符串前面和后面的所有设置的字符串,默认为空格 chars -- 移除字符串头尾指定的字符序列. st = " hello " st = st.strip() print(st+"end") 输出: 如果设置了字符序列的话,那么它会删除,字符串前后出现的所有序列中有的字符.但不会清除空格. st = "hello" st = st.strip('h,o,e') print(st) 因

  • 对python中数组的del,remove,pop区别详解

    以a=[1,2,3] 为例,似乎使用del, remove, pop一个元素2 之后 a都是为 [1,3], 如下: >>> a=[1,2,3] >>> a.remove(2) >>> a [1, 3] >>> a=[1,2,3] >>> del a[1] >>> a [1, 3] >>> a= [1,2,3] >>> a.pop(1) 2 >>>

  • 浅谈python 中的 type(), dtype(), astype()的区别

    如下所示: 函数 说明 type() 返回数据结构类型(list.dict.numpy.ndarray 等) dtype() 返回数据元素的数据类型(int.float等) 备注:1)由于 list.dict 等可以包含不同的数据类型,因此不可调用dtype()函数 2)np.array 中要求所有元素属于同一数据类型,因此可调用dtype()函数 astype() 改变np.array中所有数据元素的数据类型. 备注:能用dtype() 才能用 astype() 测试代码: import nu

随机推荐