码迷,mamicode.com
首页 > 其他好文 > 详细

笨办法19函数和变量

时间:2017-10-10 23:21:53      阅读:255      评论:0      收藏:0      [点我收藏+]

标签:size   字符串   man   and   digg   track   图片   定义   log   

以下为代码:

 1 def cheese_and_crackers(cheese_count, boxes_of_crackers): #定义函数
 2     print "You have %d cheeses!" % cheese_count
 3     print "You have %d boxes of crackers!" % boxes_of_crackers
 4     print "Man that‘s enough for a party!"
 5     print "Get a blanket.\n"
 6 
 7 
 8 print "We can just give the function numbers directly:"
 9 cheese_and_crackers(20, 30)
10 
11 print "OR, we can use variables from our script:" #通过变量执行
12 amount_of_cheese = 10
13 amount_of_crackers = 50
14 cheese_and_crackers(amount_of_cheese, amount_of_crackers)
15 
16 print "We can even do math inside too:" #通过math执行
17 cheese_and_crackers(10 + 20, 5 + 6)
18 
19 print "And we can combine the two, variables and math:" #通过变量+math执行
20 cheese_and_crackers(amount_of_cheese + 100, amount_of_crackers + 1000)

输出结果:

技术分享


获取用户输入:

1 def cheese_and_crackers(cheese_count, boxes_of_crackers):
2     print "You have %d cheeses!" % cheese_count
3     print "You have %d boxes of crackers!\n" % boxes_of_crackers
4 
5 num1 = raw_input("cheeses:")
6 num2 = raw_input("crackers:")
7 
8 cheese_and_crackers(num1, num2)

然而执行到用户输入后,报错 
技术分享

查看问题发现,报错由于变量的类型不正确,即%d和raw_input的问题,原因是raw_input() 将所有输入作为字符串看待,返回的是字符串类型。可以有以下解决办法: 
1. 将%d换成%r或者%s 
2. 将raw_input换成input,input() 返回所输入的数字的类型( int, float ) 
3. 第8行加入int: cheese_and_crackers(int(num1), int(num2))

以下用方法2

1 def cheese_and_crackers(cheese_count, boxes_of_crackers):
2     print "You have %d cheeses!" % cheese_count
3     print "You have %d boxes of crackers!\n" % boxes_of_crackers
4 
5 num = "Please enter the number"
6 num1 = input(num + ", cheeses:")
7 num2 = input(num + ", crackers:")
8 
9 cheese_and_crackers(num1, num2)

顺利输出结果: 
技术分享


 
 

 

笨办法19函数和变量

标签:size   字符串   man   and   digg   track   图片   定义   log   

原文地址:http://www.cnblogs.com/p36606jp/p/7648246.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!