typy(1+2*3.)
今天写错了一个代码,导致我一道题目打错了。我第一次选的时候报错了!然后我以为是老师写错题目的了,看了答案才知道,我是真的打错了…
【错题笔记】
因为3.代表浮点数,2*浮点数的结果还是浮点数,1+浮点数也是浮点数,所以答案是float
作业
【问题】一个def函数是输入一个千位数,例如1234,输出结果为 个位:4 十位:3 百位:2 千位:1
过程1:
num=input('请输入一个千位数')
num=int(num)
a1=num[0:1]
# a='千位'
b1=num[1:2]
# b='百位'
c1=num[2:3]
# c='十位'
d1=num[3:4]
def func1('千位','百位','十位','个位'):
print(key)
for key,value in kwargs.items():
print(key,value)
fuc('千位'=a1,'百位'=b1,'十位'=c1,'个位'=d1)
不知道为什么一直报错,修改以后的过程2:
# num=input('请输入一个千位数')
# num=int(num)
mydict={}
def func():
mydict['个位']=num[3:4]
mydict['十位']=num[2:3]
mydict['百位']=num[1:2]
mydict['千位']=num[0:1]
for key,value in mydict.items():
print(key,value)
return num
func(num=1234)
算不出来查不出为什么还是报错,于是我开始了漫长的检查之路。终于明白为什么了!!原来int的字符是没法切片的,要转成str才可以进行切片!
【解答】
采用的是字典的方式进行输出的,太不容易了!
def func(num):
mydict={}
mydict['个位']=num[3:4]
mydict['十位']=num[2:3]
mydict['百位']=num[1:2]
mydict['千位']=num[0:1]
for key,value in mydict.items():
print(key,value)
return
func(str(1234))
【问题】编写一个函数,求出0到给定数字之间的奇数相加之和
【解答】
本来以为很简单,结果因为数学搞不清楚情况,一直算不出来,为自己的数学感到捉急
def func(num):
if num%2==1:
num=(1+num)*((num+1)/4)
else:
num=num*(num/4)
return num
func(11)
之前一直卡在这句上,原句是这样的
if num%2==1:
num=(1+num)*((num)/4)
算了半天总是缺一点,后来一步步拆算核验下来,原来这里num是奇数,还要+1才能被4整除。真是对自己的数据呵呵了,
终于完工!睡觉。
提交完发现错了一题。。。
【问题】属于python中关键字的是
A func
B def
C if
D where
就我这脑子,竟然选了func if where????
【正确答案】B C