python的raw_python之raw_input()(学习笔记六)

python之raw_input()(学习笔记六)

我们经常使用raw_input()读取用户的输入,如下例子所示:

>>> name = raw_input('please input your name:'),截图如下:

b6ed77bb98b3c210580640cf18f87fc3.png

下面简单说下,raw_input()与if搭配使用,脚本如下:

#!/usr/bin/env python

# -*- coding:utf-8 -*-

birth = raw_input('birth:')

if birth < 2000:

print '00前'

else:

print '00后'

下面我们来运行脚本,结果如截图所示:

[root@redhat6 tmp]# chmod +x 1.py

[root@redhat6 tmp]# python 1.py

birth:

06f96fd0d24994b030c1e6b0979275c6.png

上图我们看到的结果与我们预想的不一样,输入1982,系统输出的应该是00前,下面说下原因:

>>> birth

'1982'

>>> '1982' < 2000

False

>>> 1982 < 2000

True

原因找到了!原来从 raw_input() 读取的内容永远以字符串的形式返回,把字符串和整数比较就不会得到期待的结

果,必须先用 int() 把字符串转换为我们想要的整型:

birth = int(raw_input('birth: '))

将1.py的脚本更改为:

35dc0ac92679c8e176a9b37eda4fa667.png

执行后结果如下:

0bc545e940a4d09b121ec72a345538ed.png

注意点:

(1)在1.py脚本中,写if循环时,在shell中是if开头,fi结尾。但在python中if开头,没有fi结尾!否则报错,截图如下:

bc80cf9b48276d083ab4a9ff87397193.png

(2)当我们输入不是合法的数字时,1.py脚本执行时也会报错,如:abc、12ab,截图如下:

a47e97a4ddd6b43462cc5265b5c00617.png

原来 int() 发现一个字符串并不是合法的数字时就会报错,程序就退出了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值