对python中raw_input()和input()的用法详解

yipeiwu_com6年前Python基础

最近用到raw_input()和input()来实现即时输入,就顺便找了些资料来看,加上自己所用到的一些内容,整理如下:

1、raw_input()

raw_input([prompt]) -> string

系统介绍中是:读取标准输入的字符串。因此,无论输入的是数字或者字符或者其他,均被视为字符格式。

如:

print "Please input a num:"
k = raw_input()
print k
print type(k)

运行结果为:

Please input a num:
23
23
<type 'str'>

输入数字:23,输出:23,类型为str;

因此,在不同的场景下就要求输入的内容进行转换。

1)转为int型

print "Please input a num:"
n = int(raw_input())
print n
print type(n)

运行结果为:

Please input a num:
23
23
<type 'int'>

输入:23,输出:23,类型为int;

2)转为list型

print "please input list s:"
s = list(raw_input())
print s
print type(s)

运行结果为:

please input list s:
23
['2', '3']
<type 'list'>

输入:23,输出:[ '2','3' ],类型为list;

如何直接生成数值型的list尚未解决,算个思考题吧。

2、input()

input([prompt]) -> value
Equivalent to eval(raw_input(prompt))

可以看出,input()的输出结果是“值”,相当于是对raw_input()进行一个计算后的结果。

如:

print "please input something :"
m = input()
print m
print type(m)

运行结果1为:

please input something :
23
23
<type 'int'>

输入:23,输出:23,类型为int;

运行结果2为:

please input something :
abc
Traceback (most recent call last):
 File "D:/python test/ceshi1.py", line 24, in <module>
 m = str(input())
 File "<string>", line 1, in <module>
NameError: name 'abc' is not defined

输入:abc,输出报错(字符型的输入不通过);

但也可以把input()的结果进行转换:

1)转为str

print "please input something :"
m = str(input())
print m
print type(m)

运行结果为:

please input something :
23
23
<type 'str'>

输入为数值型的23,输出:23,类型为str;

2)转为int

print "please input something :"
m = int(input())
print m
print ty

运行结果为:

please input something :
23.5
23
<type 'int'>

输入:23.5,输出:23,类型为int(默认为向下取整);

注:input()不可使用list转为列表。

以上这篇对python中raw_input()和input()的用法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python 3 使用Pillow生成漂亮的分形树图片

Python 3 使用Pillow生成漂亮的分形树图片

该程序通过绘制树干(最初是树;后来是树枝)并递归地添加树来绘制“树”。 使用Pillow。 利用递归函数绘制分形树(fractal tree),分形几何学的基本思想:客观事物具有自相似的...

python实现从pdf文件中提取文本,并自动翻译的方法

python实现从pdf文件中提取文本,并自动翻译的方法

针对Python 3.5.2 测试 首先安装两个包: $ pip install googletrans $ pip install pdfminer3k googletrans会提供一...

Python实现识别手写数字大纲

写在前面 其实我之前写过一个简单的识别手写数字的程序,但是因为逻辑比较简单,而且要求比较严苛,是在50x50大小像素的白底图上手写黑色数字,并且给的训练材料也不够多,导致准确率只能五五开...

Python读取图片EXIF信息类库介绍和使用实例

首先要介绍的是 Python Imaging Library,使用方法如下: 复制代码 代码如下: from PIL import Image from PIL.ExifTags imp...

解决pycharm运行出错,代码正确结果不显示的问题

解决pycharm运行出错,代码正确结果不显示的问题

昨天手贱,觉得自己装的Python版本太低,重新安装了一个,安装完成后运行出现错误: Fatal Python error: initfsencoding: unable to load...