python123程序作业答案说句心里话_作业 -- 几道简单的Python题
1 #!/usr/bin/python
2 #-*- coding: utf-8 -*-
3
4 importrandom5 importsys6 importos7
8 version_error_info = '請使用Python2'.decode('utf-8').encode('gbk')9 if sys.version_info >= (3, 0):10 raiseRuntimeError(version_error_info)11
12 n = 10240
13 max_int = 511
14 list = [] #保存生成的整數
15 dic = dict.fromkeys(range(max_int+1),0) #key為元素,value為出現次數
16
17 defbuild():18 for i inrange(n):19 key =random.randint(0,max_int)20 list.append(key)21 dic[key] = dic[key]+1
22
23 defshow():24 #for i in list:
25 #print(list[i])
26 for key indic:27 print key,':',dic[key]28
29 defmain():30 build()31 show()32 os.system('pause')33
34 if __name__ == '__main__':35 main()
View Code
思路:
導入random模塊,調用random.randint()方法來生成隨機數
用一個字典來保存每個元素出現的次數,其中key為每種元素(即[0,512)),value為每種元素個數,當然也看可以不用字典來做,直接調用python中列表的count函數如list.count(0)即可返回數字0在list中的出現次數
運行結果:
第二題
1 #!/usr/bin/python
2 #-*- coding:utf-8 -*-
3
4 importsys5 importos6
7 version_error_info = '請使用Python2'.decode('utf-8').encode('gbk')8
9 if sys.version_info >= (3, 0):10 raiseRuntimeError(version_error_info)11
12 defbuild():13 str =raw_input()14 globallist15 list = str.split(' ')16 list = [int(list[i]) for i in range(len(list))] #將輸入字符強轉為整型
17
18 defshow():19 #for i in range(len(list)):
20 #print(list[i], end=' ')
21 #print()
22 start,end = map(int, raw_input().split()) #輸入兩個整數
23 printlist[start:end]24
25 defmain():26 build()27 show()28 os.system('pause')29
30 if __name__ == '__main__':31 main()
View Code
思路:
我這里應該有點問題,不需要將輸入的字符強轉為整型,不過輸入兩個整數還是要進行轉換
運行結果:
第三題
1 #!/usr/bin/python
2 #-*- coding: utf-8 -*-
3
4 importsys5 importos6
7 version_error_info = '請使用Python2'.decode('utf-8').encode('gbk')8
9 if sys.version_info >= (3, 0):10 raiseRuntimeError(version_error_info)11
12 dic = {'Name':12, 'age':20, 'sex':'boy'}13
14 defrun():15 whileTrue:16 key =raw_input()17 #Python3中沒有has_key()方法,被__contains__()替代
18 #if dic.has_key(key):
19 if key indic:20 printdic[key]21 else:22 print '您輸入的鍵不存在'.decode('utf-8').encode('gbk')23 break
24
25 defmain():26 run()27 os.system('pause')28
29 if __name__ == '__main__':30 main()
View Code
運行結果:
第四題
1 #!/usr/bin/python
2 #-*- coding: utf-8 -*-
3
4 importsys5 importos6
7 version_error_info = '請使用Python2'.decode('utf-8').encode('gbk')8
9 if sys.version_info >= (3, 0):10 raiseRuntimeError(version_error_info)11
12 defbuild():13 global list_key #列表,元素為字典中的鍵
14 global list_value #列表,元素為字典中的鍵值
15 global dic #兩個列表合并后的字典
16 global n #長度較小的列表的長度
17 str =raw_input()18 list_key = str.split(' ')19 str =raw_input()20 list_value = str.split(' ')21 dic = {} #字典聲明
22 n = len(list_key) if len(list_key)
26 defshow():27 #for i in range(n):
28 #print list_key[i],':',list_value[i]
29 printdic30
31 defmain():32 build()33 show()34 os.system('pause')35
36 if __name__ == '__main__':37 main()
View Code
運行結果:(此處輸入對應第三題中的字典)
總結:
1、生成隨機數的方法
導入random模塊,調用該模塊中的各種函數
2、使程序在運行結束時暫停的方法
導入os模塊,調用system(“pause”)函數
3、python2中調用print函數輸出含中文的字符串結果為ascii或亂碼的解決
(在不同環境下情況不同,此處解決方案對應本人筆記本電腦中的環境)
在字符串后面加上“.decode('utf-8').encode('gbk')”(將ascii碼轉為gbk中文編碼)
4、輸入兩個整數的方法
a, b = map(int, raw_input().split())
總結
以上是生活随笔為你收集整理的python123程序作业答案说句心里话_作业 -- 几道简单的Python题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: springboot 拦截器 日志_跟武
- 下一篇: linux中mysql回滚重演_DM7