インポートランダム インポートはos.path DEF get_mobile_no(mobile_no_file_path): mobile_no = "" prifix = [135,136,137,138,150,159,188 ] ながら 1 :
ランダムに開始選択# mobile_prifix = random.choice(prifix)
8ランダムに生成された後位 mobile_postfixを = random.randint(10000000 、99999999 )
#スプライシング mobile_no = STR(mobile_prifix)+ STR(mobile_postfix)
#は、ファイルが存在するかどうかを決定する 試みを: オープン(mobile_no_file_pathと、" A + ")FPとして:
#判重逻辑 場合 mobile_no でfp.read(): 継続
写入#を文件 fp.write(mobile_no + " N \ " ) 休憩 を除いて Eなど例外: オープン(と" no.txt "、" + " )FPとして: もし mobile_no 中)fp.read(: 継続 fp.write(mobile_no + " \ nは") ブレーク リターンmobile_noの 印刷(get_mobile_no(" D:\\ no2.txt "))
乱数を生成すると8 zfillを使用することができます
Pythonのzfill()メソッドは、前にゼロを埋め、右揃え元の文字列の指定された長さを返します。
コードの変更:
インポートランダム インポートはos.path DEF get_mobile_no(mobile_no_file_path): mobile_no = "" prifix = [135,136,137,138,150,159,188 ] ながら 1 : mobile_prifix = random.choice(prifix) mobile_postfix = STR(random.randint(0,99999999))zfill(8 ) #从0开始、用zfill生成八位数 mobile_no = STR(mobile_prifix)+ STR(mobile_postfix) してみてください: オープンで(mobile_no_file_path、" + " FPとして): もし mobile_noでfp.read(): 継続 fp.write(mobile_no + " N \ " ) 休憩 を除いて 電子など例外: オープンで(" no.txt "、" + " )FPとして: もし mobile_no でfp.read(): 継続 fp.write(mobile_no + " \ n個" ) ブレーク リターンmobile_noの 印刷(get_mobile_noを("D:\\ no2.txt "))
残りの問題:シリアル追い越さのリスト?