第 5 章

测试题

  1. 对于这行代码:
  1. answer = raw_input()

如果用户键入 12answer 会包含一个字符串。这是因为 raw_input() 总是会得到一个字符串。

在一个小程序里试试看:

  1. print "enter a number: ",
  2. answer = raw_input()
  3. print type(answer)
  4. >>> ============== RESTART ==============
  5. >>>
  6. enter a number: 12
  7. <type 'str'>
  8. >>>

所以 raw_input() 会提供一个字符串。

记住,在 Python 3 中,rawinput() 改名为 input()3

  1. 要让 raw_input() 打印一条提示消息,可以在括号里的引号中加一些文本,如下:
  1. answer = raw_input("Type in a number: ")
  1. 要使用 raw_input() 得到一个整数, 可以使用 int() 转换从 raw_input() 得到的字符串。这个工作可以分两步来完成,如下:
  1. something = raw_input()
  2. answer = int(something)

或者也可以一步完成,如下:

  1. answer = int(raw_input())
  1. 与上一题类似,只不过要使用 float() 而不是 int()

动手试一试

  1. 交互模式中,这个指令应当如下所示:
  1. >>> first = 'Warren'
  2. >>> last = 'Sande'
  3. >>> print first + last
  4. WarrenSande

唉呀!没有空格。可以在你的名字末尾加一个空格。

  1. >>> first = 'Warren '

或者这样试试看:

  1. >>> print first + ' ' + last
  2. Warren Sande

还可以使用一个逗号,如下:

  1. >>> first = 'Warren'
  2. >>> last = 'Sande'
  3. >>> print first, last
  4. Warren Sande
  1. 这个程序应当类似下面的代码:
  1. first = raw_input('enter your first name: ')
  2. last = raw_input('enter your last name: ')
  3. print 'Hello,', first, last, 'how are you today?'
  1. 这个程序应当类似下面的代码:
  1. length = float(raw_input ('length of the room in feet: '))
  2. width = float(raw_input ('width of the room in feet: '))
  3. area = length * width
  4. print 'The area is', area, 'square feet.'
  1. 可以为上面第 3 题的程序增加几行代码:
  1. length = float(raw_input ('length of the room in feet: '))
  2. width = float(raw_input ('width of the room in feet: '))
  3. cost_per_yard = float(raw_input ('cost per square yard: '))
  4. area_feet = length * width
  5. area_yards = area_feet / 9.0
  6. total_cost = area_yards * cost_per_yard
  7. print 'The area is', area_feet, 'square feet.'
  8. print 'That is', area_yards, 'square yards.'
  9. print 'Which will cost', total_cost
  1. 程序应该类似下面的代码:
  1. quarters = int(raw_input("How many quarters? "))
  2. dimes = int(raw_input("How many dimes? "))
  3. nickels = int(raw_input("How many nickels? "))
  4. pennies = int(raw_input("How many pennies? "))
  5. total = 0.25 * quarters + 0.10 * dimes + 0.05 * nickels + 0.01 * pennies
  6. print "You nave a total of: ", total