Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit fa64c76

Browse files
Dr-XYZmattwang44
andauthored
translate library/random.po (#1027)
* translate * Apply suggestions from code review Co-authored-by: W. H. Wang <mattwang44@gmail.com> * Unified "replacement" --------- Co-authored-by: W. H. Wang <mattwang44@gmail.com>
1 parent e0c216c commit fa64c76

File tree

1 file changed

+171
-22
lines changed

1 file changed

+171
-22
lines changed

library/random.po

+171-22
Original file line numberDiff line numberDiff line change
@@ -3,25 +3,26 @@
33
#
44
# Translators:
55
# Allen Wu <allen91.wu@gmail.com>, 2021
6+
# Dr.XYZ <dr.xyz.tw@gmail.com>, 2025
67
msgid ""
78
msgstr ""
89
"Project-Id-Version: Python 3.13\n"
910
"Report-Msgid-Bugs-To: \n"
1011
"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"
1314
"Language-Team: Chinese - TAIWAN (https://github.com/python/python-docs-zh-"
1415
"tw)\n"
1516
"Language: zh_TW\n"
1617
"MIME-Version: 1.0\n"
1718
"Content-Type: text/plain; charset=UTF-8\n"
1819
"Content-Transfer-Encoding: 8bit\n"
1920
"Plural-Forms: nplurals=1; plural=0;\n"
20-
"X-Generator: Poedit 3.2.2\n"
21+
"X-Generator: Poedit 3.5\n"
2122

2223
#: ../../library/random.rst:2
2324
msgid ":mod:`!random` --- Generate pseudo-random numbers"
24-
msgstr ":mod:`!random` --- 生成偽隨機數"
25+
msgstr ":mod:`!random` --- 產生偽隨機數"
2526

2627
#: ../../library/random.rst:7
2728
msgid "**Source code:** :source:`Lib/random.py`"
@@ -41,7 +42,7 @@ msgid ""
4142
"replacement."
4243
msgstr ""
4344
"對於整數,可以從範圍中進行均勻選擇。對於序列,有一個隨機元素的均勻選擇,一個"
44-
"用來原地 (in-place) 產生隨機排列清單的函式,以及一個用來隨機取樣不替換的函"
45+
"用來原地 (in-place) 產生隨機排列清單的函式,以及一個用來隨機取樣不重置的函"
4546
"式。"
4647

4748
#: ../../library/random.rst:19
@@ -51,7 +52,7 @@ msgid ""
5152
"generating distributions of angles, the von Mises distribution is available."
5253
msgstr ""
5354
"在實數線上,有一些函式用於處理均勻分佈、常態分佈(高斯分佈)、對數常態分佈、"
54-
"負指數分佈、gamma 分佈和 Beta 分佈。對於生成角度分佈,可以使用馮·米塞斯分佈 "
55+
"負指數分佈、gamma 分佈和 Beta 分佈。對於產生角度分佈,可以使用馮·米塞斯分佈 "
5556
"(von Mises distribution)。"
5657

5758
#: ../../library/random.rst:23
@@ -66,7 +67,7 @@ msgid ""
6667
"purposes, and is completely unsuitable for cryptographic purposes."
6768
msgstr ""
6869
"幾乎所有 module 函式都相依於基本函式 :func:`.random`,此函式在半開放範圍 "
69-
"``0.0 <= X < 1.0`` 內均勻地生成一個隨機 float(浮點數)。Python 使用 "
70+
"``0.0 <= X < 1.0`` 內均勻地產生一個隨機 float(浮點數)。Python 使用 "
7071
"Mersenne Twister(梅森旋轉演算法)作為核心的產生器,它產生 53 位元精度 "
7172
"float,其週期為 2\\*\\*19937-1,透過 C 語言進行底層的實作既快速又支援執行緒安"
7273
"全 (threadsafe)。Mersenne Twister 是現存最廣泛被驗證的隨機數產生器之一,但是"
@@ -137,6 +138,9 @@ msgid ""
137138
"contention and poor performance. Consider using separate instances of :class:"
138139
"`Random` per thread instead."
139140
msgstr ""
141+
"全域隨機數產生器和 :class:`Random` 的實例是執行緒安全的。然而,在自由執行緒構"
142+
"建中,對全域產生器或同一 :class:`Random` 實例的並行呼叫可能會遇到爭用和性能不"
143+
"佳。請考慮改為每個執行緒使用單獨的 :class:`Random` 實例。"
140144

141145
#: ../../library/random.rst:70
142146
msgid "Bookkeeping functions"
@@ -177,7 +181,7 @@ msgid ""
177181
"generates a narrower range of seeds."
178182
msgstr ""
179183
"若使用版本 1(為復現於舊版本 Python 中產生隨機序列而提供),:class:`str` 和 :"
180-
"class:`bytes` 的演算法會生成範圍更窄的種子 (seed)。"
184+
"class:`bytes` 的演算法會產生範圍更窄的種子 (seed)。"
181185

182186
#: ../../library/random.rst:90
183187
msgid ""
@@ -816,6 +820,31 @@ msgid ""
816820
">>> sample([10, 20, 30, 40, 50], k=4) # Four samples without replacement\n"
817821
"[40, 10, 50, 30]"
818822
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]"
819848

820849
#: ../../library/random.rst:510
821850
msgid "Simulations::"
@@ -846,6 +875,27 @@ msgid ""
846875
">>> sum(trial() for i in range(10_000)) / 10_000\n"
847876
"0.7958"
848877
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"
849899

850900
#: ../../library/random.rst:535
851901
msgid ""
@@ -916,6 +966,26 @@ msgid ""
916966
"print(f'hypothesis that there is no difference between the drug and the "
917967
"placebo.')"
918968
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'即藥物與安慰劑之間沒有差異。')"
919989

920990
#: ../../library/random.rst:575
921991
msgid ""
@@ -950,6 +1020,31 @@ msgid ""
9501020
"print(f'Mean wait: {mean(waits):.1f} Max wait: {max(waits):.1f}')\n"
9511021
"print('Quartiles:', [round(q, 1) for q in quantiles(waits)])"
9521022
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)])"
9531048

9541049
#: ../../library/random.rst:604
9551050
msgid ""
@@ -1028,6 +1123,31 @@ msgid ""
10281123
" indices = sorted(random.choices(range(n), k=r))\n"
10291124
" return tuple(pool[i] for i in indices)"
10301125
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)"
10311151

10321152
#: ../../library/random.rst:659
10331153
msgid ""
@@ -1131,64 +1251,64 @@ msgstr ""
11311251

11321252
#: ../../library/random.rst:713
11331253
msgid "Command-line usage"
1134-
msgstr ""
1254+
msgstr "命令列用法"
11351255

11361256
#: ../../library/random.rst:717
11371257
msgid "The :mod:`!random` module can be executed from the command line."
1138-
msgstr ""
1258+
msgstr ":mod:`!random` 模組可以從命令列執行。"
11391259

11401260
#: ../../library/random.rst:719
11411261
msgid ""
11421262
"python -m random [-h] [-c CHOICE [CHOICE ...] | -i N | -f N] [input ...]"
11431263
msgstr ""
1264+
"python -m random [-h] [-c CHOICE [CHOICE ...] | -i N | -f N] [input ...]"
11441265

11451266
#: ../../library/random.rst:723
1146-
#, fuzzy
11471267
msgid "The following options are accepted:"
1148-
msgstr "以下函式產生離散分佈。"
1268+
msgstr "接受以下選項:"
11491269

11501270
#: ../../library/random.rst:729
11511271
msgid "Show the help message and exit."
1152-
msgstr ""
1272+
msgstr "顯示幫助訊息並退出。"
11531273

11541274
#: ../../library/random.rst:734
11551275
msgid "Print a random choice, using :meth:`choice`."
1156-
msgstr ""
1276+
msgstr "列印一個隨機選擇,使用 :meth:`choice`。"
11571277

11581278
#: ../../library/random.rst:739
11591279
msgid ""
11601280
"Print a random integer between 1 and N inclusive, using :meth:`randint`."
1161-
msgstr ""
1281+
msgstr "列印 1 到 N(含)之間的隨機整數,使用 :meth:`randint`。"
11621282

11631283
#: ../../library/random.rst:744
11641284
msgid ""
11651285
"Print a random floating-point number between 0 and N inclusive, using :meth:"
11661286
"`uniform`."
1167-
msgstr ""
1287+
msgstr "列印 0 到 N(含)之間的隨機浮點數,使用 :meth:`uniform`。"
11681288

11691289
#: ../../library/random.rst:747
11701290
msgid "If no options are given, the output depends on the input:"
1171-
msgstr ""
1291+
msgstr "如果未給定選項,則輸出取決於輸入:"
11721292

11731293
#: ../../library/random.rst:749
11741294
msgid "String or multiple: same as :option:`--choice`."
1175-
msgstr ""
1295+
msgstr "字串或多個:與 :option:`--choice` 相同。"
11761296

11771297
#: ../../library/random.rst:750
11781298
msgid "Integer: same as :option:`--integer`."
1179-
msgstr ""
1299+
msgstr "整數:與 :option:`--integer` 相同。"
11801300

11811301
#: ../../library/random.rst:751
11821302
msgid "Float: same as :option:`--float`."
1183-
msgstr ""
1303+
msgstr "浮點數:與 :option:`--float` 相同。"
11841304

11851305
#: ../../library/random.rst:756
11861306
msgid "Command-line example"
1187-
msgstr ""
1307+
msgstr "命令列範例"
11881308

11891309
#: ../../library/random.rst:758
11901310
msgid "Here are some examples of the :mod:`!random` command-line interface:"
1191-
msgstr ""
1311+
msgstr "以下是 :mod:`!random` 命令列介面的一些範例:"
11921312

11931313
#: ../../library/random.rst:760
11941314
msgid ""
@@ -1222,3 +1342,32 @@ msgid ""
12221342
"$ python -m random --float 6\n"
12231343
"3.1942323316565915"
12241344
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

Comments
 (0)