python学习遇到的报错

今天练习function,写一个最简单的求和函数:

def my_function (index1,index2):
    print "The sum of the two indexes are: %d" %(index1+index2)

print "This functions is to calculate the sum of two numbers."
input1 = raw_input("Please input the first number:")
input2 = raw_input("Please input the second number:")

my_function(input1, input2)
当然,运行完就报错了:


这是因为raw_input函数,输入的是字符串string类型。改成input函数(input返回的是数值类型int, float),就好啦!

def my_function (index1,index2):
    print "The sum of the two indexes are: %d" %(index1+index2)

print "This functions is to calculate the sum of two numbers."
input1 = input("Please input the first number:")
input2 = input("Please input the second number:")

my_function(input1, input2)
完美运行吼吼吼!

--------------------------------------

今天学写function

def print_two(*args):
    arg1, arg2 = args
    print "arg1: %r, arg2: %r" % (arg1, arg2)

print_two("Zed", "Shaw")


结果运行时报错 IndentationError: unexpected indent,指到了第三行

搜了一下是说格式错误 因为python对格式要求严格。(参考blog)

百思不得其解啊

把print 前面的空格删除,再重新敲空格,就好了....


补充3: 终于知道是怎么回事儿了:


让编辑器显示所有符号后,发现后面几个print因为notepad++自动缩进的问题,全部tab化了。也就是说,在这个图片里,只有第一个print的缩进是对的——4个空格。剩下(一个向右的橘色箭头)都是Tab,是错的。真坑爹啊! 不知道怎么能让编辑器智能点儿......


像这张图片这样就对了!!!


补充2: *args表示 tell Python to take all the arguments to the function and then put them in args as a list. 

                 args可以用其他起的名字代替,并不是固定的


补充:在colon后面所有缩进四个空格four spaces的行都默认为print_two这个函数的内容



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值