python中的三种输入方式

python2.X:

python2.x中以下三个函数都支持:

raw_input()
input()
sys.stdin.readline()
raw_input( )将所有输入作为字符串看待,返回字符串类型
input( )只能接收“数字”的输入,返回所输入的数字的类型( int, float )
sys.stdin.readline()将所有输入视为字符串,并在最后包含换行符'\n',可以通过sys.stdin.readline().strip('\n')去掉换行符。


示例
import sys
a = input("input a: ")
b = raw_input("raw_input b: ")
c = sys.stdin.readline()
print(a,type(a))
print(b,type(b))
print(c,type(c))

输出:

input a: 12
raw_input b: 23
34
(12, <type 'int'>)
('23', <type 'str'>)
('34\n', <type 'str'>)

python3.x:

python3.x对raw_input( )和input( )进行了整合,去除了raw_input( ),仅保留了input( )函数,接收任意输入,将所有输入默认为字符串处理,并返回字符串类型。

示例
import sys
a = input("input a: ")
c = sys.stdin.readline()
print(a,type(a))
print(b,type(b))
print(c,type(c))
输出:

input a: 12
34
('12', <type 'str'>)
('34\n', <type 'str'>)

sys.stdin.readline()与input()区别:

sys.stdin.readline( )会将标准输入全部获取,包括末尾的'\n',input()会把‘\n'忽略.

import sys

a=sys.stdin.readline()

b=input()

print(a,b)
print(len(a),len(b))

输出:

1 2 3 4 5 6
1 2 3 4 5 6
1 2 3 4 5 6        #sys.stdin.readline()的输出,包含\n,所以有个换行符输出
                   #换行符
1 2 3 4 5 6        #input()的输出,无换行符
12 11
全部评论

相关推荐

码农索隆:有点耳熟,你们是我教过最差的一届
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-03 18:22
投了几百份简历,专业和方向完全对口,都已读不回。尝试改了一下学校,果然有奇效。
steelhead:这不是很正常嘛,BOSS好的是即便是你学院本可能都会和聊几句,牛客上学院本机会很少了
点赞 评论 收藏
分享
07-03 16:02
门头沟学院 Java
点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务