生成乙個隨機整數組成的網格的程式,使用者可以規定需要輸入多少行,多少列,以及整數所在的範圍。
示例:
rows:7v
invalid literal for int() with base 10: '7v'
rows:4
columns:7
minimum(or enter for
0):-10
maximum(or enter for1000):
4782970
487508
56456
762691
285599
511163
450763
194744
19716
2105
777363
35627
468992
351
1.定義乙個獲取使用者輸入整數的函式,用來獲取行、列及整數範圍(最大最小值)
2.使用random模組的randint方法隨機生成整數
3.使用2個迴圈將每行每列的整數列印出來
#-*- coding: utf-8 -*-
import random
defget_int
(msg,minimum,default):
while
true:
try:
line=input(msg)
ifnot line and default is
notnone:#如果輸入為空,且預設值存在
return default
i=int(line)
if i"must be >=",minimum)
else:
return i
except valueerror as err:
print (err)
rows=get_int("rows:",1,none)
columns=get_int("columns:",1,none)
minimum=get_int("minimum(or enter for 0):",-10000,0)
default=1000
#注意預設值如果小於最小值的情況
if default2*minimum
maximum=get_int("maximum(or enter for"+str(default)+"):",minimum,default)
row=0
while row0
line=""
while columnwhile len(s)<8: #每個隨機生成的數字都使用8字元的字串來表示
s=" "+s
line+=s
column+=1
print(line)
#注意 該行不能放在第三個迴圈裡面,因為每print一次,換行。
row+=1
迴圈語句while的使用
try: except: 捕獲異常語句的使用
python 內建模組random模組,使用randint隨機生成給定範圍的整數
深搜練習 生成全排列
0.總結 get to the key point firstly,the article comes from lawsonabs 1.前言 使用dfs 輸出數字n內的全排列。2.思想 2.1 深搜 涉及到這種選數問題,第一想到的應該就是深搜。因為深搜主要就是解決選不選這類問題。那該如何實現呢?根...
練習 生成器和模組
1.寫乙個生成式能夠產生的資料為 1,4,27,256,3125,9 9num1 n n for n in range 1,10 print next num1 2.寫乙個生成式能夠產生1 10中所有半徑是偶數的圓的面積num2 math.pi r 2 for r in range 1,11 if ...
深搜練習 生成組合數
0.總結 get to the key point firstly,the article comes from lawsonabs 1.要求 從乙個有n個數的集合 無重複數字 中選擇m個數的集合出來,要做到不重不漏。2.思路 2.1分治 在這 n 個數中,每個數都有選或不選兩種選擇。於是問題就轉換...