孤独海岸线 发表于 2018-8-14 12:17:10

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

  python之raw_input()(学习笔记六)
  
  我们经常使用raw_input()读取用户的输入,如下例子所示:
  >>> name = raw_input('please input your name:'),截图如下:

  下面简单说下,raw_input()与if搭配使用,脚本如下:
  #!/usr/bin/env python
  # -*- coding:utf-8 -*-
  birth = raw_input('birth:')
  if birth < 2000:
  print '00前'
  else:
  print '00后'
  下面我们来运行脚本,结果如截图所示:
  # chmod +x 1.py
  # python 1.py
  birth:

  上图我们看到的结果与我们预想的不一样,输入1982,系统输出的应该是00前,下面说下原因:
  >>> birth
  '1982'
  >>> '1982' < 2000
  False
  >>> 1982 < 2000
  True
  原因找到了!原来从 raw_input() 读取的内容永远以字符串的形式返回,把字符串和整数比较就不会得到期待的结
  果,必须先用 int() 把字符串转换为我们想要的整型:
  birth = int(raw_input('birth: '))
  将1.py的脚本更改为:

  执行后结果如下:

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

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

  原来 int() 发现一个字符串并不是合法的数字时就会报错,程序就退出了。
页: [1]
查看完整版本: python之raw_input()(学习笔记六)