●●●●TCL/TKなら俺に聞け 4●●●● (542レス)
●●●●TCL/TKなら俺に聞け 4●●●● http://mevius.5ch.net/test/read.cgi/tech/1375678740/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
331: デフォルトの名無しさん [] 2019/02/16(土) 12:37:52.60 ID:8dsmpsXe 何がやりたいの? lstの要素が1、2、3で変数sの値を文字列"1 2 3"にしたいなら下のでいいけど set s $lst http://mevius.5ch.net/test/read.cgi/tech/1375678740/331
332: デフォルトの名無しさん [] 2019/02/16(土) 12:43:44.55 ID:lF7O1vpr set s [format "%03d %03d %03d" $lst] みたいなのでもうまくいかないんです http://mevius.5ch.net/test/read.cgi/tech/1375678740/332
333: デフォルトの名無しさん [] 2019/02/16(土) 12:51:28.30 ID:8dsmpsXe integer指定してるのに文字列食わしてるからじゃん http://mevius.5ch.net/test/read.cgi/tech/1375678740/333
334: デフォルトの名無しさん [] 2019/02/16(土) 12:57:13.00 ID:lF7O1vpr set lst [list [expr 1] [expr 2] [expr 3]] set s [format "%03d %03d %03d" $lst] これでもダメでした>< http://mevius.5ch.net/test/read.cgi/tech/1375678740/334
335: デフォルトの名無しさん [] 2019/02/16(土) 13:09:24.14 ID:8dsmpsXe tclでは全ての変数が文字列なんだからそりゃそうなる 数値1をリストlstに格納するときに数値1は文字列1に変換される http://mevius.5ch.net/test/read.cgi/tech/1375678740/335
336: デフォルトの名無しさん [] 2019/02/16(土) 13:12:18.28 ID:lF7O1vpr set lst [list 1 2 3] set s [format "%03d %03d %03d" [lindex $lst 0] [lindex $lst 1] [lindex $lst 2]] これならエラーにならないんですが面倒なので もっと良い方法ありませんか? http://mevius.5ch.net/test/read.cgi/tech/1375678740/336
337: デフォルトの名無しさん [] 2019/02/16(土) 13:16:17.38 ID:lF7O1vpr あと 335 さんの主張する仕様だと [lindex $lst 0] は文字列なので 333 さんの話と矛盾してる気がしますがどういうことでしょう http://mevius.5ch.net/test/read.cgi/tech/1375678740/337
338: デフォルトの名無しさん [] 2019/02/16(土) 13:21:28.18 ID:8dsmpsXe 数値に変換できるときは勝手に変換してくれるんだね知らなかった 見当違いなこと言ってごめん http://mevius.5ch.net/test/read.cgi/tech/1375678740/338
339: デフォルトの名無しさん [] 2019/02/16(土) 13:25:32.89 ID:lF7O1vpr なんとなくこれで行ける気もしたのでやってみたのですが set s [format "%03d %03d %03d" [list $lst]] だめでした>< もう一息な気がするのであきらめつかずモヤモヤしています http://mevius.5ch.net/test/read.cgi/tech/1375678740/339
340: デフォルトの名無しさん [] 2019/02/16(土) 15:44:33.35 ID:O+uQ3VIp 代行レスはここへ https://rosie.5ch.net/test/read.cgi/operatex/1549681970/160 160 名前: [Φ|(|´|Д|`|)|Φ] BBxed!! 臨時で名無しです[] 投稿日:2019/02/16(土) 13:42:57.64 お手数ですがよろしくお願いします。 【板名】プログラム技術 【スレ名】●●●●TCL/TKなら俺に聞け 4●●●● 【スレのURL】https://mevius.5ch.net/test/read.cgi/tech/1375678740/l50 【名前欄】代行経由 【メール欄】sage 【本文】↓ >>330 330さんが考えているような書き方は出来ないと思われる。 Tclのリストは空白区切りの単なる文字列です。 list 1 2 3 は3つの要素のリストを生成するが、 "1 2 3" という1つの文字列という扱いです。 よって、set s [format "%d %d %d" $lst] とすると、 set s [format "%d %d %d" "1 2 3"] のように置き換えられます。 求めている回答ではないかも知れませんが、ひと手間かけて以下 のようなことはできます。 リストの各要素をそれぞれ分離して別々の変数にするには、 lassignコマンドを使います。 set lst [list 1 2 3] lassign $lst x y z set s [format "%d %d %d" $x $y $z] これでどうでしょうか。 http://mevius.5ch.net/test/read.cgi/tech/1375678740/340
341: デフォルトの名無しさん [] 2019/02/16(土) 16:20:43.87 ID:STqQL4YT set lst [list 1 2 3] set s [eval "format {%02d %02d %02d} $lst"] これでいけました ほんとうにありがとうございました http://mevius.5ch.net/test/read.cgi/tech/1375678740/341
342: デフォルトの名無しさん [] 2019/02/16(土) 16:35:31.07 ID:AfCn0+WA >>330 set s [format "%d %d %d" {*}[list 1 2 3] ] http://mevius.5ch.net/test/read.cgi/tech/1375678740/342
343: デフォルトの名無しさん [sage] 2019/02/16(土) 16:49:13.67 ID:vYP1vVnz eval使ったら負け http://mevius.5ch.net/test/read.cgi/tech/1375678740/343
344: デフォルトの名無しさん [sage] 2019/02/16(土) 16:52:58.14 ID:STqQL4YT set lst [list 1 2 3] set s [format {%02d %02d %02d} {*}$lst] これでもいけました ほんとうにありがとうございました http://mevius.5ch.net/test/read.cgi/tech/1375678740/344
345: デフォルトの名無しさん [] 2019/02/16(土) 17:07:55.05 ID:8dsmpsXe >>344 この書き方初めて見た いつもforeachで回してたけどこういう書き方もできるんだね http://mevius.5ch.net/test/read.cgi/tech/1375678740/345
346: デフォルトの名無しさん [] 2019/02/16(土) 17:11:56.78 ID:STqQL4YT んー expand でも検索したつもりだったのになー http://www.geocities.co.jp/SiliconValley/4137/dir1/tcltkevolution85.html >なお、{*}は、8.5がαリリースだったときには{expand}というトークンでして、 >このページにも長くそのように書いていましたが、 正式リリースに伴って{*}と変更されました。 http://mevius.5ch.net/test/read.cgi/tech/1375678740/346
347: デフォルトの名無しさん [] 2019/02/16(土) 18:03:56.10 ID:mSqP7pCT 存在を知らないと気付かない機能のリスト https://sites.google.com/site/gpsnmeajp/tcl-tk/tcl-tk-jian-yirifarensu http://mevius.5ch.net/test/read.cgi/tech/1375678740/347
348: デフォルトの名無しさん [] 2019/02/16(土) 19:34:26.00 ID:kXtbvz/w >>324 OSと、tcl/tk, Python/Tkinter それぞれのバージョンと、バイナリパッケージでインストールしたなら、 パッケージの入手元は? >>328 tcl皆無にするなら、tkinterも動かないんわけだけど http://mevius.5ch.net/test/read.cgi/tech/1375678740/348
349: デフォルトの名無しさん [] 2019/02/16(土) 22:13:00.74 ID:WrrsgfdN >>345 ver8.4迄はリストをバラして個別に適用するには、evalを使うのが"正統的裏技"だったがver8.5から{*}が導入されマニュアル8.6版のevalの項目ではこちらの使用が推奨されている。 ver8.6のマニュアルでは、eval,info,Tclの項目に小分けして{*}の説明が少しだけある。 http://mevius.5ch.net/test/read.cgi/tech/1375678740/349
350: デフォルトの名無しさん [] 2019/02/17(日) 11:27:32.85 ID:7mUUrd8D 同じ動作をさせてるつもりなのですが ぬるぬる感が明らかに違うので tkinter + tix https://ideone.com/0fB1OD Tcl/Tk + BWidget https://ideone.com/dpBcd3 違うものを比べてると言われればそうなのかも知れません http://mevius.5ch.net/test/read.cgi/tech/1375678740/350
351: デフォルトの名無しさん [sage] 2019/02/17(日) 11:34:57.16 ID:7MWZQWrl >>349 *$lst じゃなくて {*}$lst って書かないといけないのは 文法仕様上前者が無理だったということかな 前者が実現出来ない理由が良く判らない http://mevius.5ch.net/test/read.cgi/tech/1375678740/351
352: デフォルトの名無しさん [] 2019/02/17(日) 17:33:15.98 ID:MVql6Ciy >>351 多くの言語で、ポインタの内容を *str_pp の様に記す習慣がある。 紛らわしくないように "*" ではなく "{*}" を使用したのかも、単なる趣味かも、判りません http://mevius.5ch.net/test/read.cgi/tech/1375678740/352
353: デフォルトの名無しさん [] 2019/02/18(月) 10:22:49.56 ID:jrTRVIL4 単なる変数展開と個々の引数としての展開では大きく違うからあえて冗長な書き方をすることでパッと見で両者の区別がつくようにしてるんじゃないかな http://mevius.5ch.net/test/read.cgi/tech/1375678740/353
354: デフォルトの名無しさん [] 2019/02/18(月) 15:25:56.92 ID:bbNHvPxv lassign で型限定する方法ない? http://mevius.5ch.net/test/read.cgi/tech/1375678740/354
355: デフォルトの名無しさん [] 2019/02/23(土) 22:18:41.43 ID:05po+dKO >>354 やりたいことをもう少し具体的に…(やっぱり難しくてお手上げかもしれないが) http://mevius.5ch.net/test/read.cgi/tech/1375678740/355
356: 本田 [] 2019/03/08(金) 06:16:15.50 ID:UCtp3rvd design patterns in tcl tk - YouTube https://www.youtube.com/watch?v=IQubd0NTENM Brent B Welch http://www.beedub.com/ http://mevius.5ch.net/test/read.cgi/tech/1375678740/356
357: デフォルトの名無しさん [sage] 2019/03/10(日) 00:10:31.28 ID:DeZad1wc >>332 set s [format "%03d %03d %03d" {*}$lst] http://mevius.5ch.net/test/read.cgi/tech/1375678740/357
358: デフォルトの名無しさん [] 2019/03/10(日) 15:03:39.13 ID:uFsYqTSV >>344 http://mevius.5ch.net/test/read.cgi/tech/1375678740/358
359: 本田 [] 2019/04/07(日) 22:45:37.16 ID:vq1byQ+H Tcl-Tk vs Wx Widgets https://wiki.tcl-lang.org/page/Tcl-Tk+vs+Wx+Widgets wxWidgets - Workshop Complex at bitWalk - Fuhito Suguri http://bitwalk.sitemix.jp/mingw_cross_wxw.php http://mevius.5ch.net/test/read.cgi/tech/1375678740/359
360: 本田 [] 2019/04/19(金) 06:32:00.09 ID:MQ2wvTRS Xilinx Tcl Store https://japan.xilinx.com/products/design-tools/vivado/Tcl-store.html http://mevius.5ch.net/test/read.cgi/tech/1375678740/360
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 182 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.997s*