python核心程式設計第六章練習題答案 (2,3,5,6,7,8,12,13,14,16)
#6-2
import random
lists=[]
for i in range(0,random.randrange(0,101)):
n = random.randrange(0,2**31)
lists.append(n)
while True:
try:
newlist =[]
for i in range(0,random.randrange(0,101)):
newlist.append(lists[i])
print newlist
break
except IndexError , e:
print 'Error occurs:',e
#6-3
inplist = raw_input('enter a list of nums:\n').strip().split(',') inplist.sort(lambda x,y:cmp(x.lower(),y.lower()),reverse = True) print inplist
#6-5
# exercise b in 6-5 #-*- coding:UTF-8 -*- import string def issame(str1=None,str2=None): '''Judge the given strings same or different''' # str1,str2 = raw_input('Enter two strings to judge: ').strip().split(',') strs = string.printable maxlen = max(len(str1),len(str2)) strdict = {} for x in xrange(0,100): strdict[strs[x]] = x try: for x in range(0,maxlen): if strdict[str1[x]] ^ strdict[str2[x]]: # print 'different strings' return 0 break else: # print 'same strings' return 1 except IndexError: # print 'different string' return 0 #exercise c in 6-5 def isrepeat(substr=None,orgstr=None): while True: orgstr = raw_input('Enter the orignal string : ') substr = raw_input('Enter the string to find it if repeat in the orignal string: ') if substr not in orgstr: print '%s not in %s' % (substr,orgstr) else: sublen = len(substr) subindex = orgstr.find(substr) try: while True: afterstr = orgstr[subindex+sublen:subindex+sublen*2] if issame(substr,afterstr): print '%s repeats in %s'%(substr,orgstr) return 1 break else: subindex = orgstr.index(substr,subindex+1,len(orgstr)) except (IndexError,ValueError),e: print '%s does not repeat in %s'%(substr,orgstr) return 0 #exercise d in 6-5 def addreverse(mstr=None): mlen = len(mstr) for item in [mstr[-1-i] for i in range(0,mlen)]: mstr+=item print mstr if __name__ == '__main__': isrepeat() addreverse('WARMACHINEROCKS')
#6-6
def stripspaces(strs=None):
while True:
if strs[0] == ' ':
strs = strs[1:]
elif strs[-1] == ' ':
strs = strs[:-1]
else:
return strs
break
if __name__ == '__main__':
strs = raw_input("Enter a string :")
print stripspaces(strs)
#6-7
# -*-coding:utf-8 -*- #功能:刪除表中能被輸入的數整除的元素 num_str = raw_input('Enter a number: ') num_num = int(num_str) fac_list = range(1,num_num+1) print "Befor: ", fac_list i=0 while i<len(fac_list): if num_num%fac_list[i]==0: del fac_list[i] else: i+=1 print "After: ",fac_list
#6-8
tylist = ['','','twenty','thirty','forty','fifty','sixty','seventy','eighty','ninety']
thlist = ['ten','eleven','twelve','thirteen','forteen','fifteen','sixteen','seventeen','eighteen','nineteen']
nums = ['','one','two','three','four','five','six','seven','eight','nine']
hund = '-hundred '
while True:
inputstr = raw_input('Enter a number: ').strip()
inlen = len(inputstr)
inputs = int(inputstr)
if inputs in range(0,1000):
if inlen == 1:
print nums[inputs]
elif inlen ==2:
if inputstr[0] == '1':
print thlist[int(inputstr[1])]
else:
print tylist[int(inputstr[0])]+'-'+nums[int(inputstr[1])]
elif inlen == 3:
if inputstr[1] == '1':
tail = thlist[int(inputstr[2])]
else:
tail = tylist[int(inputstr[1])]+'-'+nums[int(inputstr[2])]
print nums[int(inputstr[0])]+hund+tail
else:
print 'over range,try again'
#6-12
def findchr(strs,chrs):
lenth = len(strs)
if chrs in strs:
for i in range(0,lenth):
if strs[i]==chrs:
print i,
else:
print '%s not in %s'%(chrs,strs)
return -1
def rfindchr(strs,chrs):
lenth = len(strs)
if chrs in strs:
for i in range(0,lenth):
if strs[-1-i]==chrs:
print -1-i+lenth,
else:
print '%s not in %s'%(chrs,strs)
return -1
def subchr(strs,origchr,newchr):
if origchr in strs:
for i in range(0,len(strs)):
if strs[i]==origchr:
strs=strs[:i]+newchr+strs[i+1:]
print strs
else:
print '%s not in %s '%(origchr,strs)
return -1
if __name__ == '__main__':
subchr('hekkkosd','f','a')
#6-13
def atoc(strs = None):
strs = raw_input('Enter a complex number:').strip()
operators = ['+','-']
stlen = len(strs)
for i in xrange(0,stlen):
op1 = 0
op2 = strs[:-1]
if strs[-1-i] in operators:
if strs[-2-i] == 'e':
for x in xrange(0,len(strs[:-2-i])):
if strs[:-2-i][-1-x] in operators:
op1 = strs[:-1-i]
op2 = strs[-1-i:-1]
break
else:
continue
else:
op1 = strs[:-1-i]
op2 = strs[-1-i:-1]
break
else:
continue
try:
result = complex(float(op1),float(op2))
print 'result: ',result,type(result)
except ValueError:
print 'Error occurs: ivalid input.\nplease makesure you have input a complex num'
if __name__ == '__main__':
atoc()
#6-14
# -*- coding:UTF-8 -*-
import random
def game():
menu = '\
選擇以下命令出拳:\n(s)石頭\n(j)剪刀\n(b)布\n'
cmds = ['石頭','剪刀','布']
(s,j,b) = cmds
usrinput = eval(raw_input(menu).strip().lower())
cptinput = random.choice(cmds)
if usrinput == cmds[cmds.index(cptinput)-1]:
print '您贏了~\n\t電腦出的是:',cptinput,'\n\t您出的是:', usrinput
elif usrinput == cmds[cmds.index(cptinput)-2]:
print '您輸了~\n\t電腦出的是:',cptinput,'\n\t您出的是:', usrinput
else:
print '您和電腦打成平手,出的都是:',cptinput
if __name__ == "__main__":
game()
#6-16(有點糙。。。)
M = [[1,1,2],[2,0,1]]
N = [[0,2,3],[1,1,2],[2,1,1]]
res = [[],[]]
result = [[],[]]
print 'The matrix M:',
for x in xrange(0,len(M)):
print '\n'
for i in xrange(0,len(M[0])):
print '\t',M[x][i],
print
print 'The matrix N:',
for x in xrange(0,len(N)):
print '\n'
for i in xrange(0,len(N[0])):
print '\t',N[x][i],
print
print 'M + N:',
for x in xrange(0,len(M)):
print '\n'
for i in range(0,len(M[0])):
res[x].append(M[x][i]+N[x][i])
print '\t',res[x][i],
print
for x in xrange(0,len(M)):
for p in xrange(0,len(N[0])):
sums = 0
for i in xrange(0,len(N)):
sums+=M[x][i]*N[i][p]
result[x].append(sums)
print
print 'M * N:',
for x in xrange(0,len(result)):
print '\n'
for i in xrange(0,len(result[0])):
print '\t',result[x][i],
相關推薦
python核心程式設計第六章練習題答案 (2,3,5,6,7,8,12,13,14,16)
#6-2 import random lists=[] for i in range(0,random.randrange(0,101)): n = random.randrange(0,2**31) lists.append(n) while True: try
python核心程式設計第六章
6-1 字串。string模組中是否有一種字串方法或者函式可以鑑定一個字串是否是另一個大字串的一部分? #in/not in 可以判斷一個字串是否再另一個字串中 'bc' in 'abcd' Out[3
Python 核心程式設計第七章練習題
7–1. 字典方法。哪個字典方法可以用來把兩個字典合併到一起? update def updateDict(): dict1 = {'name': 'John', 'Age': 20} dict2 = {'address': 'Beijing road'}
Python核心程式設計第15章正則表示式練習答案
#15-1 識別下列字串:“bat,” “bit,” “but,” “hat,” “hit,” 或 “hut” pattern = r'[bh][aiu]t,?' #15-2 匹配用一個空格分隔的任意一對單詞,比如,名和姓 pattern = r'\b\w+ \w+\
Python核心程式設計第三版練習參考(第一章:正則表示式)
1-1 識別後續的字串:“bat”、“bit”、“but”、“hat”、“hit”或者“hut”。 答:'[bh][aiu]t' 1-2 匹配由單個空格分隔的任意單詞對,也就是姓和名。 答:'\w+\s\w+' 1-3 匹配由單個逗號和單個空白符分隔的任何單詞和單個字
Python核心程式設計(第十三章)--面向物件程式設計
面向物件程式設計主要是類和類的例項 建立類: class MyNewObjectType(bases): 'define MyNewObjectType class' class_suite 關鍵詞是class,緊接著是一個類名,隨後是定義類的類體程式碼 o
Python核心程式設計 第九章練習
筆者剛剛開始Python的系統學習,所以在程式碼上還無法達到pythonic的水準,很多寫法也都是按照C++的習慣來寫的,希望能有前輩進行交流指導。 歡迎拍磚 9_1 #!/usr/bin/python2 # coding: utf-8 if
Python核心程式設計 第七章 練習7–5
7–5. userpw2.py. 下面的問題和例題7.1 中管理名字-密碼的鍵值對資料的程式有關。 (a)修改那個指令碼,使它能記錄使用者上次的登入日期和時間(用time 模組),並與使用者密碼一起 儲存起來。程式的介面有要求使用者輸入使用者名稱和密碼的提示
概論論與數理統計嚴繼高版第六章習題答案(含過程)
com 概論 img 9.png ima mage bubuko 技術 image 第八題在下一頁 概論論與數理統計嚴繼高版第六章習題答案(含過程)
C++ Primer 第五版第六章習題答案(下)
書籍版本:2019年9月第一版;王剛 楊巨峰譯;電子工業出版社 編譯器 : win10 && VS2015 這一篇從6.3節開始,也就是30題開始 6.30 報的是錯誤#1,沒有正確的返回值 6.31 返回區域性引用時無效,返回區域性定義的常量引
第六章 裝置管理(2)
與裝置無關的I/O軟體 1.裝置獨立性(無關性) 使用者程式設計時所用的裝置名(邏輯上的)與實際物理裝置無關; 好處: ①裝置分配時的靈活性 3個物理裝置(如印表機),程式中申請一臺印表機,執行時不拘泥必須是某臺(如第2個)印表機 ②易於實現I/O重定向 指用於I/O操作的裝置可以更換(
Python核心程式設計第三版——第一章練習題答案
1.6 練習 正則表示式 1-1 [bh][aiu]t; 1-2 \w+ \w+; 1-3 \w+,\s\w+; 1-4 [A-Za-z_]+[\w_]+ python有效識
Python核心程式設計第三版第一章答案
包含了本人不斷嘗試更加嚴謹的過程: 1-1 re.match(’[bh][aiu]t’, ‘bat’).group() 1-2 re.match(’[A-Z][a-z]+ [A-Z][a-z]+’, ‘Xhen Fiagu’).group() 1-3 re.ma
python核心程式設計-第6章課後習題答案
6-2. 字串識別符號.修改例 6-1 的 idcheck.py 指令碼,使之可以檢測長度為一的識別符號,並且可以識別 Python 關鍵字,對後一個要求,你可以使用 keyword 模組(特別是 keyword.kelist)來幫你. #coding=utf-8 im
筆記(Python核心程式設計 第 1 部分 通用應用主題 1 章 正則表示式)
Python核心程式設計 第 1 部分 通用應用主
筆記(Python核心程式設計 第 1 部分 通用應用主題 1 章 正則表示式)
Python核心程式設計 第 1 部分 通用應用主題 1 章 正則表示式 管道符號(|):表示一個“從多個模式中選擇其 一”的操作。它用於分割不同的正則表示式。就能夠增強正則表示式的靈活性,使得正則表示式能夠匹配多個
第六章習題答案
linux第六章練習題答案?1. 請查資料了解這些術語:/dev/hda, /dev/hdb, /dev/sda, /dev/sdb, 他們之間有什麽區別?/dev/hda, /dev/hdb是ide接口硬盤的塊文件。/dev/hda表示第一塊ide磁盤,/dev/hdb表示第二塊ide磁盤。?/dev/sd
《算法導論》第六章 練習題 Exercise
chan idt 告訴 mage 最大 關鍵字 樹堆 return while 6.1-1 在高度為 h 的堆中,元素最多有 2h+1 - 1 個,最少有 2h 個。註意算法導論裏的高度是指深度,從 0 開始而不是從 1 開始。 6.1-2 這很好
Python基礎教程 第六章 學習筆記
作用 actor int bsp python基礎 clas 最好 col 學習 收集函數 把實際參收集到元組和字典當中 1 def print_params(*params): 2 print(params) 3 """ 4 print_parasm
Python核心程式設計(第3版) pdf 下載
適讀人群 :本書適合具有一定經驗的Python開發人員閱讀 全面涵蓋當今應用開發中的眾多領域 為中級Python開發人員提供實踐方法 涵蓋大量實用的程式碼案例 每章末尾的習題有助於鞏固所學知識 想進一步提升Python程式設計水平?請深入分析真實應用程式中使用的大量相關主