看板 DataScience 關於我們 聯絡資訊
請問底下連結第83行Pipe()的前面加一個星號(*)是什麼意思?如果把這星號移除,就 會發生執行錯誤。我知道Pipe是用來實現不同進程之間的通信,但不了解為什麼前面加個 星號。 附帶一提,這支程式效能很高,作者的功力很深,只是有很多地方我還不了解。 https://github.com/adik993/ppo-pytorch/blob/master/envs/multi_env.py -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.241.85.246 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/DataScience/M.1663648348.A.744.html
lycantrope: Pipe回傳兩端Connection,後用 * unpack而已... 09/20 13:00
yuwenche: 感謝回覆。不過,這星號的功能應該是打包(packing), 09/21 08:45
yuwenche: 而不是unpacking? 09/21 08:45
lycantrope: 那我對python星號功力不足,只能問其他高手了... 09/21 11:19
DarkIllusion: 就1樓說的那樣 09/21 13:26
DarkIllusion: google: unpack tuples into arguments 09/21 13:29
DarkIllusion: 為什麼你的理解是 packing 而不是 unpacking? 09/21 13:31
yuwenche: Python的unpacking只須將等號左邊的變數分開寫,不需要 09/22 11:09
yuwenche: 星號。請參考: 09/22 11:10
yuwenche: acking.html 09/22 11:11
lycantrope: 無言... 打開python自己測一下有這麼難嗎 09/22 14:45
lycantrope: [*"測一下有很難嗎..."] #是不是unpack成list 09/22 14:47
bhbbbbb: 加油!!!建議改從基礎學起!!! 09/22 16:37
DarkIllusion: @yuwenche 是這樣子的:unpack 指的是把一個 09/22 20:01
DarkIllusion: iterable obj 解開變成多個 item 的行為;packing 09/22 20:01
DarkIllusion: 指的是把多個 item 打包成一個 iterable obj 的行為 09/22 20:01
DarkIllusion: 。而且並不是說*只能是這兩種行為的其中一種 09/22 20:01
DarkIllusion: 我指的 iterable obj 是 list、tuple,或是像上面的 09/22 20:04
DarkIllusion: lycantrope 提到的字串,他上面那行將字串 unpack 09/22 20:04
DarkIllusion: 成好幾個字元 09/22 20:04
DarkIllusion: 你附上的連結很理所當然地是 unpacking 沒錯,但是 09/22 20:09
DarkIllusion: 這是不是 unpacking 跟你的問題其實關係不太大 09/22 20:09
DarkIllusion: 還有疑問的話歡迎回覆,也許我可以找幾個範例解釋 09/22 20:16
yoyololicon: 請去python 版 09/22 20:23
MADNUG: 笑暈,錯得這麼理直氣壯XDD 09/27 03:19