Python核心第二版习题答案.docx

上传人:b****5 文档编号:7161561 上传时间:2023-01-21 格式:DOCX 页数:12 大小:17.29KB
下载 相关 举报
Python核心第二版习题答案.docx_第1页
第1页 / 共12页
Python核心第二版习题答案.docx_第2页
第2页 / 共12页
Python核心第二版习题答案.docx_第3页
第3页 / 共12页
Python核心第二版习题答案.docx_第4页
第4页 / 共12页
Python核心第二版习题答案.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

Python核心第二版习题答案.docx

《Python核心第二版习题答案.docx》由会员分享,可在线阅读,更多相关《Python核心第二版习题答案.docx(12页珍藏版)》请在冰豆网上搜索。

Python核心第二版习题答案.docx

Python核心第二版习题答案

Pytho核心编程第二版(第二,三,四,五章)答案

第二章

2-3 

a=int(input('A='))

b=int(input('B='))

print('A-B=%d,A+B=%d\nA/B=%d,A**B=%d,A%%B=%d'%(a-b,a+b,a/b,a**b,a%b))

 2-4

(a)print(input('Enterastring:

'))

(b)print(int(input('Enteravalue:

')))

2-5

(a)

i=0

whilei<11:

  print(i)

  i+=1

(b)

foriinrange(11):

   print(i)

 2-6

v=int(input('Enteranumbertodeterminepositiveornegative:

'))

ifv<0:

  print('%disnegative'%v)

elifv==0:

  print('youenterzero')

else:

  print('%dispositive'%v)

2-7

while循环

s=input('Enterastring:

')

i=0

whilei

  

  print(s[i])

  i+=1

for循环

s=input('Enterastring:

')

foriins:

  print(i)

2-8

while循环

print('Enterfivenumber')

v=[]

i=0

s=0

whilei<5:

  a=input('n%d='%(i+1))    

  v.extend([int(a)])

  s=s+v[i]

  i+=1

print(v)

print('sum=%d'%s)

for循环

print('Enterfivenumber')

v=[]

s=0

foriinrange(5):

  a=input('n%d='%(i+1))    

  v.extend([int(a)])

  s=s+v[i]  

print(v)

print('sum=%d'%s)

2--9

print('Enterfivenumber')

v=[]

s=0

foriinrange(5):

  a=input('n%d='%(i+1))    

  v.extend([int(a)])

  s=s+v[i]  

print(v)

print('ave=%f'%(float(s)/len(v)))

2-10

i=1

whilei:

  n=int(input('Enteranumberbetween1-100:

'))  

  ifn<=100andn>=1:

    print('Done')

    i=0

  else:

    print('Error')

2-11

whileTrue:

  s=0

  c=int(input("'1'sum,'2'ave,'0'exit:

\n"))

  ifc==1:

    foriinrange(5):

      n=int(input('n%d='%(i+1)))

      s+=n

    print(s)

  if c==2:

    foriinrange(5):

      n=int(input('n%d='%(i+1)))

      s+=n

       

    print(float(s/5))

     

  ifc==0:

    break

2-15

a=int(input('a='))

b=int(input('b='))

c=int(input('c='))

n=[]

ifa>b:

  a,b=b,a

if a>c:

  a,c=c,a

if b>c:

  b,c=c,b

n.extend([a,b,c])

print(n)

    

   

    

   

第三章;

importos

ls=os.linesep

defwrite():

    whileTrue:

      fname=input('Enterfilename:

')

      ifos.path.exists(fname):

        print('Error%salreadyexists'%fname)

      else:

        break

    all=[]

    print("\nEnterlines('.'byitselftoquit).\n")

    whileTrue:

      entry=input('>')

      ifentry=='.':

        break

      else:

        all.append(entry)

    fobj=open(fname,'w')

    fobj.writelines(['%s%s'%(x,ls)forxinall])

    fobj.close()

    print('Done')

defread():

    whileTrue:

        fname=input('Enterfilename:

')    

        ifnotos.path.exists(fname):

            print('sorry,%sisnotexists'%fname)

        else:

            break

    try:

        fobj=open(fname,'r')

    exceptIOErrorase:

        print("***fileopenerror",e)

    else:

        foreachlineinfobj:

            print(eachline),

    fobj.close()     

i=0

whilei!

='q':

  i=input("'r'read,'w',write,'q'quite:

")

  ifi=='r':

    read()

  elifi=='w':

    write()

   

第四,五章

4-1

python对象的三个属性,身份,类型,值(ID,type,value)

除了值之外其他两个都是只读的

如果对象支持更新操作,那么他的值就是可改变的,否也是只读的

5-2

defmul(a,b):

  m=a*b

  return(m)

x=int(input('x='))

y=int(input('y='))

print(mul(x,y))

5-3

defgrade(a):

 

    ifa>100ora<0:

       print("error,please,inputyourscorebetween1to100")

    elifa>=90:

       print("A")

    elifa>=80:

       print("B")

    elifa>=70:

       print("C")

    elifa>=60:

       print("D")    

    else:

       print("F")    

whileTrue:

  

  x=int(input("Enteryourscore:

"))

  ifx==0:

    break

  else:

    grade(x)

5-4

defly(y):

  if(y%100!

=0andy%4==0)ory%400==0:

    print('%disleapyear'%y)

  else:

    print('%disnotleapyear'%y)

whileTrue:

  x=int(input('Entertheyear:

'))

  ifx==0:

    break

  else:

    ly(x)

5-5

defcd(m0):

  ifm0<0orm0>1:

    print('Error,请输入0到1之间的金额')

  else:

    m=m0*100

    a=m/25

    a1=m%25

    b=a1/10

    b1=a1%10

    c=b1/5

    c1=b1%5

    d=c1

    print('%f美元=25美分x%d+10美分x%d+5美分x%d+1美分x%d'%(m0,a,b,c,d))

whileTrue:

  m0=float(input('请输入金额:

'))  

  ifm0==0:

    break

  else:

    cd(m0)

   

 5-6

whileTrue:

  s=input('请输入要计算的式子:

\n')

  ifs==0:

    break

  else:

    

    ifs.find('*')!

=-1:

      ls=s.split('*')

      print(float(ls[0])*float(ls[1]))

    elifs.find('+')!

=-1:

      ls=s.split('+')

      print(float(ls[0])+float(ls[1]))    

    elifs.find("^")!

=-1:

      ls=s.split("^")

      print(float(ls[0])**float(ls[1]))

    elifs.find('/')!

=-1:

      ls=s.split('/')

      print(float(ls[0])/float(ls[1]))

    elifs.find('%')!

=-1:

      ls=s.split('%')

      print(float(ls[0])%float(ls[1]))

5-8

importmath

defsqcu():

  a=float(input('输入正方形或立方体的边长:

'))

  print('边长为',a,'的正方形面积是',round(a*a,3))

  print('边长为',a,'立方体体积是',a**3)

defcisp():

  r=float(input('输入圆或球的半径:

'))

  print('半径为',r,'的圆面积是',round(math.pi*(r**2),3))

  print('半径为',r,'的球的体积是',round(math.pi*(r**3)*4/3,3))

sqcu()

cisp()

5-10

defFtoC():

  f=float(input('输入华氏温度:

'))

  c=(f-32)*(5/9)

  print(f,'华氏度等于',round(c,3),'摄氏温度')

FtoC()

5-11

defevod():

  e=[]

  o=[]

  foriinrange(21):

    ifi%2==0:

      e.append(i)

    else:

      o.append(i)

  print('偶数:

',e,'\n奇数:

',o)

defjudiv():

  a,b=int(input('enterthefirstnumber:

')),int(input('enterthesecondnumber:

'))

  ifa%b==0:

    print(a,'能被',b,'整除')

  else:

    print(a,'不能被',b,'整除')

evod()

judiv()

5-13

defhmtom():

  hm=input("输入时间(格式'hh:

mm'):

")

  lhm=hm.split(':

')

  m=float(lhm[0])*60+float(lhm[1])

  print(m)

hmtom()

5-15

defgcd():

  a,b=int(input('a=')),int(input('b='))

  t1,t2=a,b

  whileb!

=0:

    ifa

      a,b=b,a

    else:

      a,b=b,a%b

  print('最大公约数是%d,最小公倍数是%d'%(a,t1*t2/a))

gcd()

5-16

defpayment():

  s=float(input('Enteropeningbalance:

'))

  p=float(input('Entermonthlypayment:

'))

  print("Pymt#   Paid    RemainingBalance")

  print("-------   -------  -----------")

  n=0

  print(n,"     ",p,"    ",round(s,2))

  whiles>=p:

  

    s=s-p  

    n=n+1

    print(n,"     ",p,"    ",round(s,2))  

    print(n,"     ",round(s,2),"    ",p)

whileTrue:

  payment()

     

5-17

importrandom

l=[]

i=0

N=random.randint(2,100)

whilei

  n=random.randint(0,2**31)

  l.append(n)

  i+=1

print(l)

print('\n')

forxinrange(len(l)):

  foryinrange(x,len(l)):

  

    ifl[x]

      l[y],l[x]=l[x],l[y]

print(l)

   

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 工作计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1