3
3
#
4
4
# Translators:
5
5
# Allen Wu <allen91.wu@gmail.com>, 2021
6
+ # Dr.XYZ <dr.xyz.tw@gmail.com>, 2025
6
7
msgid ""
7
8
msgstr ""
8
9
"Project-Id-Version : Python 3.13\n "
9
10
"Report-Msgid-Bugs-To : \n "
10
11
"POT-Creation-Date : 2024-09-27 00:14+0000\n "
11
- "PO-Revision-Date : 2023-01-23 22:47 +0800\n "
12
- "Last-Translator : Allen Wu <allen91.wu @gmail.com>\n "
12
+ "PO-Revision-Date : 2025-03-07 19:17 +0800\n "
13
+ "Last-Translator : Dr.XYZ <dr.xyz.tw @gmail.com>\n "
13
14
"Language-Team : Chinese - TAIWAN (https://github.com/python/python-docs-zh- "
14
15
"tw)\n "
15
16
"Language : zh_TW\n "
16
17
"MIME-Version : 1.0\n "
17
18
"Content-Type : text/plain; charset=UTF-8\n "
18
19
"Content-Transfer-Encoding : 8bit\n "
19
20
"Plural-Forms : nplurals=1; plural=0;\n "
20
- "X-Generator : Poedit 3.2.2 \n "
21
+ "X-Generator : Poedit 3.5 \n "
21
22
22
23
#: ../../library/random.rst:2
23
24
msgid ":mod:`!random` --- Generate pseudo-random numbers"
24
- msgstr ":mod:`!random` --- 生成偽隨機數 "
25
+ msgstr ":mod:`!random` --- 產生偽隨機數 "
25
26
26
27
#: ../../library/random.rst:7
27
28
msgid "**Source code:** :source:`Lib/random.py`"
@@ -41,7 +42,7 @@ msgid ""
41
42
"replacement."
42
43
msgstr ""
43
44
"對於整數,可以從範圍中進行均勻選擇。對於序列,有一個隨機元素的均勻選擇,一個"
44
- "用來原地 (in-place) 產生隨機排列清單的函式,以及一個用來隨機取樣不替換的函 "
45
+ "用來原地 (in-place) 產生隨機排列清單的函式,以及一個用來隨機取樣不重置的函 "
45
46
"式。"
46
47
47
48
#: ../../library/random.rst:19
@@ -51,7 +52,7 @@ msgid ""
51
52
"generating distributions of angles, the von Mises distribution is available."
52
53
msgstr ""
53
54
"在實數線上,有一些函式用於處理均勻分佈、常態分佈(高斯分佈)、對數常態分佈、"
54
- "負指數分佈、gamma 分佈和 Beta 分佈。對於生成角度分佈 ,可以使用馮·米塞斯分佈 "
55
+ "負指數分佈、gamma 分佈和 Beta 分佈。對於產生角度分佈 ,可以使用馮·米塞斯分佈 "
55
56
"(von Mises distribution)。"
56
57
57
58
#: ../../library/random.rst:23
@@ -66,7 +67,7 @@ msgid ""
66
67
"purposes, and is completely unsuitable for cryptographic purposes."
67
68
msgstr ""
68
69
"幾乎所有 module 函式都相依於基本函式 :func:`.random`,此函式在半開放範圍 "
69
- "``0.0 <= X < 1.0`` 內均勻地生成一個隨機 float(浮點數)。Python 使用 "
70
+ "``0.0 <= X < 1.0`` 內均勻地產生一個隨機 float(浮點數)。Python 使用 "
70
71
"Mersenne Twister(梅森旋轉演算法)作為核心的產生器,它產生 53 位元精度 "
71
72
"float,其週期為 2\\ *\\ *19937-1,透過 C 語言進行底層的實作既快速又支援執行緒安"
72
73
"全 (threadsafe)。Mersenne Twister 是現存最廣泛被驗證的隨機數產生器之一,但是"
@@ -137,6 +138,9 @@ msgid ""
137
138
"contention and poor performance. Consider using separate instances of :class:"
138
139
"`Random` per thread instead."
139
140
msgstr ""
141
+ "全域隨機數產生器和 :class:`Random` 的實例是執行緒安全的。然而,在自由執行緒構"
142
+ "建中,對全域產生器或同一 :class:`Random` 實例的並行呼叫可能會遇到爭用和性能不"
143
+ "佳。請考慮改為每個執行緒使用單獨的 :class:`Random` 實例。"
140
144
141
145
#: ../../library/random.rst:70
142
146
msgid "Bookkeeping functions"
@@ -177,7 +181,7 @@ msgid ""
177
181
"generates a narrower range of seeds."
178
182
msgstr ""
179
183
"若使用版本 1(為復現於舊版本 Python 中產生隨機序列而提供),:class:`str` 和 :"
180
- "class:`bytes` 的演算法會生成範圍更窄的種子 (seed)。"
184
+ "class:`bytes` 的演算法會產生範圍更窄的種子 (seed)。"
181
185
182
186
#: ../../library/random.rst:90
183
187
msgid ""
@@ -816,6 +820,31 @@ msgid ""
816
820
">>> sample([10, 20, 30, 40, 50], k=4) # Four samples without replacement\n"
817
821
"[40, 10, 50, 30]"
818
822
msgstr ""
823
+ ">>> random() # 隨機浮點數:0.0 <= x < 1.0\n"
824
+ "0.37444887175646646\n"
825
+ "\n"
826
+ ">>> uniform(2.5, 10.0) # 隨機浮點數:2.5 <= x <= 10.0\n"
827
+ "3.1800146073117523\n"
828
+ "\n"
829
+ ">>> expovariate(1 / 5) # 到達間隔平均為 5 秒\n"
830
+ "5.148957571865031\n"
831
+ "\n"
832
+ ">>> randrange(10) # 0 到 9(含)的整數\n"
833
+ "7\\ n\n"
834
+ "\n"
835
+ ">>> randrange(0, 101, 2) # 0 到 100(含)的偶數整數\n"
836
+ "26\\ n\n"
837
+ "\n"
838
+ ">>> choice(['win', 'lose', 'draw']) # 從序列中隨機選取單一元素\n"
839
+ "'draw'\n"
840
+ "\n"
841
+ ">>> deck = 'ace two three four'.split()\n"
842
+ ">>> shuffle(deck) # 打亂串列\n"
843
+ ">>> deck\n"
844
+ "['four', 'two', 'ace', 'three']\n"
845
+ "\n"
846
+ ">>> sample([10, 20, 30, 40, 50], k=4) # 四個無重置的樣本\n"
847
+ "[40, 10, 50, 30]"
819
848
820
849
#: ../../library/random.rst:510
821
850
msgid "Simulations::"
@@ -846,6 +875,27 @@ msgid ""
846
875
">>> sum(trial() for i in range(10_000)) / 10_000\n"
847
876
"0.7958"
848
877
msgstr ""
878
+ ">>> # 六次輪盤旋轉(有重置的加權抽樣)\n"
879
+ ">>> choices(['red', 'black', 'green'], [18, 18, 2], k=6)\n"
880
+ "['red', 'green', 'black', 'black', 'red', 'black']\n"
881
+ "\n"
882
+ ">>> # 從一副 52 張撲克牌中無重置發 20 張牌\n"
883
+ ">>> # 並確定具有十點值的牌的比例:十、傑克、王后或國王\n"
884
+ ">>> deal = sample(['tens', 'low cards'], counts=[16, 36], k=20)\n"
885
+ ">>> deal.count('tens') / 20\n"
886
+ "0.15\n"
887
+ "\n"
888
+ ">>> # 估計從 7 次旋轉中得到 5 次或更多正面的概率\n"
889
+ ">>> # 使用一枚 60% 概率為正面的偏幣\n"
890
+ ">>> sum(binomialvariate(n=7, p=0.6) >= 5 for i in range(10_000)) / 10_000\n"
891
+ "0.4169\n"
892
+ "\n"
893
+ ">>> # 計算 5 個樣本的中位數位於中間兩個四分位數的概率\n"
894
+ ">>> def trial():\n"
895
+ "... return 2_500 <= sorted(choices(range(10_000), k=5))[2] < 7_500\n"
896
+ "...\n"
897
+ ">>> sum(trial() for i in range(10_000)) / 10_000\n"
898
+ "0.7958"
849
899
850
900
#: ../../library/random.rst:535
851
901
msgid ""
@@ -916,6 +966,26 @@ msgid ""
916
966
"print(f'hypothesis that there is no difference between the drug and the "
917
967
"placebo.')"
918
968
msgstr ""
969
+ "# 範例來自 Dennis Shasha 和 Manda Wilson 的 \" Statistics is Easy\" \n"
970
+ "from statistics import fmean as mean\n"
971
+ "from random import shuffle\n"
972
+ "\n"
973
+ "drug = [54, 73, 53, 70, 73, 68, 52, 65, 65]\n"
974
+ "placebo = [54, 51, 58, 44, 55, 52, 42, 47, 58, 46]\n"
975
+ "observed_diff = mean(drug) - mean(placebo)\n"
976
+ "\n"
977
+ "n = 10_000\n"
978
+ "count = 0\n"
979
+ "combined = drug + placebo\n"
980
+ "for i in range(n):\n"
981
+ " shuffle(combined)\n"
982
+ " new_diff = mean(combined[:len(drug)]) - mean(combined[len(drug):])\n"
983
+ " count += (new_diff >= observed_diff)\n"
984
+ "\n"
985
+ "print(f'{n} 次標籤重新洗牌僅產生 {count} 個差異實例')\n"
986
+ "print(f'至少與觀察到的差異 {observed_diff:.1f} 一樣極端。')\n"
987
+ "print(f'單邊 p 值 {count / n:.4f} 使我們拒絕無效假設')\n"
988
+ "print(f'即藥物與安慰劑之間沒有差異。')"
919
989
920
990
#: ../../library/random.rst:575
921
991
msgid ""
@@ -950,6 +1020,31 @@ msgid ""
950
1020
"print(f'Mean wait: {mean(waits):.1f} Max wait: {max(waits):.1f}')\n"
951
1021
"print('Quartiles:', [round(q, 1) for q in quantiles(waits)])"
952
1022
msgstr ""
1023
+ "from heapq import heapify, heapreplace\n"
1024
+ "from random import expovariate, gauss\n"
1025
+ "from statistics import mean, quantiles\n"
1026
+ "\n"
1027
+ "average_arrival_interval = 5.6\n"
1028
+ "average_service_time = 15.0\n"
1029
+ "stdev_service_time = 3.5\n"
1030
+ "num_servers = 3\n"
1031
+ "\n"
1032
+ "waits = []\n"
1033
+ "arrival_time = 0.0\n"
1034
+ "servers = [0.0] * num_servers # 每個伺服器可用的時間\n"
1035
+ "heapify(servers)\n"
1036
+ "for i in range(1_000_000):\n"
1037
+ " arrival_time += expovariate(1.0 / average_arrival_interval)\n"
1038
+ " next_server_available = servers[0]\n"
1039
+ " wait = max(0.0, next_server_available - arrival_time)\n"
1040
+ " waits.append(wait)\n"
1041
+ " service_duration = max(0.0, gauss(average_service_time, "
1042
+ "stdev_service_time))\n"
1043
+ " service_completed = arrival_time + wait + service_duration\n"
1044
+ " heapreplace(servers, service_completed)\n"
1045
+ "\n"
1046
+ "print(f'平均等待時間:{mean(waits):.1f} 最大等待時間:{max(waits):.1f}')\n"
1047
+ "print('四分位數:', [round(q, 1) for q in quantiles(waits)])"
953
1048
954
1049
#: ../../library/random.rst:604
955
1050
msgid ""
@@ -1028,6 +1123,31 @@ msgid ""
1028
1123
" indices = sorted(random.choices(range(n), k=r))\n"
1029
1124
" return tuple(pool[i] for i in indices)"
1030
1125
msgstr ""
1126
+ "def random_product(*args, repeat=1):\n"
1127
+ " \" 從 itertools.product(*args, **kwds) 中隨機選擇\" \n"
1128
+ " pools = [tuple(pool) for pool in args] * repeat\n"
1129
+ " return tuple(map(random.choice, pools))\n"
1130
+ "\n"
1131
+ "def random_permutation(iterable, r=None):\n"
1132
+ " \" 從 itertools.permutations(iterable, r) 中隨機選擇\" \n"
1133
+ " pool = tuple(iterable)\n"
1134
+ " r = len(pool) if r is None else r\n"
1135
+ " return tuple(random.sample(pool, r))\n"
1136
+ "\n"
1137
+ "def random_combination(iterable, r):\n"
1138
+ " \" 從 itertools.combinations(iterable, r) 中隨機選擇\" \n"
1139
+ " pool = tuple(iterable)\n"
1140
+ " n = len(pool)\n"
1141
+ " indices = sorted(random.sample(range(n), r))\n"
1142
+ " return tuple(pool[i] for i in indices)\n"
1143
+ "\n"
1144
+ "def random_combination_with_replacement(iterable, r):\n"
1145
+ " \" 有重置地選擇 r 個元素。結果按可疊代物件排序。\" \n"
1146
+ " # 結果將在 set(itertools.combinations_with_replacement(iterable, r)) 中\n"
1147
+ " pool = tuple(iterable)\n"
1148
+ " n = len(pool)\n"
1149
+ " indices = sorted(random.choices(range(n), k=r))\n"
1150
+ " return tuple(pool[i] for i in indices)"
1031
1151
1032
1152
#: ../../library/random.rst:659
1033
1153
msgid ""
@@ -1131,64 +1251,64 @@ msgstr ""
1131
1251
1132
1252
#: ../../library/random.rst:713
1133
1253
msgid "Command-line usage"
1134
- msgstr ""
1254
+ msgstr "命令列用法 "
1135
1255
1136
1256
#: ../../library/random.rst:717
1137
1257
msgid "The :mod:`!random` module can be executed from the command line."
1138
- msgstr ""
1258
+ msgstr ":mod:`!random` 模組可以從命令列執行。 "
1139
1259
1140
1260
#: ../../library/random.rst:719
1141
1261
msgid ""
1142
1262
"python -m random [-h] [-c CHOICE [CHOICE ...] | -i N | -f N] [input ...]"
1143
1263
msgstr ""
1264
+ "python -m random [-h] [-c CHOICE [CHOICE ...] | -i N | -f N] [input ...]"
1144
1265
1145
1266
#: ../../library/random.rst:723
1146
- #, fuzzy
1147
1267
msgid "The following options are accepted:"
1148
- msgstr "以下函式產生離散分佈。 "
1268
+ msgstr "接受以下選項: "
1149
1269
1150
1270
#: ../../library/random.rst:729
1151
1271
msgid "Show the help message and exit."
1152
- msgstr ""
1272
+ msgstr "顯示幫助訊息並退出。 "
1153
1273
1154
1274
#: ../../library/random.rst:734
1155
1275
msgid "Print a random choice, using :meth:`choice`."
1156
- msgstr ""
1276
+ msgstr "列印一個隨機選擇,使用 :meth:`choice`。 "
1157
1277
1158
1278
#: ../../library/random.rst:739
1159
1279
msgid ""
1160
1280
"Print a random integer between 1 and N inclusive, using :meth:`randint`."
1161
- msgstr ""
1281
+ msgstr "列印 1 到 N(含)之間的隨機整數,使用 :meth:`randint`。 "
1162
1282
1163
1283
#: ../../library/random.rst:744
1164
1284
msgid ""
1165
1285
"Print a random floating-point number between 0 and N inclusive, using :meth:"
1166
1286
"`uniform`."
1167
- msgstr ""
1287
+ msgstr "列印 0 到 N(含)之間的隨機浮點數,使用 :meth:`uniform`。 "
1168
1288
1169
1289
#: ../../library/random.rst:747
1170
1290
msgid "If no options are given, the output depends on the input:"
1171
- msgstr ""
1291
+ msgstr "如果未給定選項,則輸出取決於輸入: "
1172
1292
1173
1293
#: ../../library/random.rst:749
1174
1294
msgid "String or multiple: same as :option:`--choice`."
1175
- msgstr ""
1295
+ msgstr "字串或多個:與 :option:`--choice` 相同。 "
1176
1296
1177
1297
#: ../../library/random.rst:750
1178
1298
msgid "Integer: same as :option:`--integer`."
1179
- msgstr ""
1299
+ msgstr "整數:與 :option:`--integer` 相同。 "
1180
1300
1181
1301
#: ../../library/random.rst:751
1182
1302
msgid "Float: same as :option:`--float`."
1183
- msgstr ""
1303
+ msgstr "浮點數:與 :option:`--float` 相同。 "
1184
1304
1185
1305
#: ../../library/random.rst:756
1186
1306
msgid "Command-line example"
1187
- msgstr ""
1307
+ msgstr "命令列範例 "
1188
1308
1189
1309
#: ../../library/random.rst:758
1190
1310
msgid "Here are some examples of the :mod:`!random` command-line interface:"
1191
- msgstr ""
1311
+ msgstr "以下是 :mod:`!random` 命令列介面的一些範例: "
1192
1312
1193
1313
#: ../../library/random.rst:760
1194
1314
msgid ""
@@ -1222,3 +1342,32 @@ msgid ""
1222
1342
"$ python -m random --float 6\n"
1223
1343
"3.1942323316565915"
1224
1344
msgstr ""
1345
+ "$ # 隨機選擇一個\n"
1346
+ "$ python -m random egg bacon sausage spam \" Lobster Thermidor aux "
1347
+ "crevettes with a Mornay sauce\" \n"
1348
+ "Lobster Thermidor aux crevettes with a Mornay sauce\n"
1349
+ "\n"
1350
+ "$ # 隨機整數\n"
1351
+ "$ python -m random 6\n"
1352
+ "6\n"
1353
+ "\n"
1354
+ "$ # 隨機浮點數\n"
1355
+ "$ python -m random 1.8\n"
1356
+ "1.7080016272295635\n"
1357
+ "\n"
1358
+ "$ # 使用明確的引數\n"
1359
+ "$ python -m random --choice egg bacon sausage spam \" Lobster Thermidor "
1360
+ "aux crevettes with a Mornay sauce\" \n"
1361
+ "egg\n"
1362
+ "\n"
1363
+ "$ python -m random --integer 6\n"
1364
+ "3\n"
1365
+ "\n"
1366
+ "$ python -m random --float 1.8\n"
1367
+ "1.5666339105010318\n"
1368
+ "\n"
1369
+ "$ python -m random --integer 6\n"
1370
+ "5\n"
1371
+ "\n"
1372
+ "$ python -m random --float 6\n"
1373
+ "3.1942323316565915"
0 commit comments