[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 03/24 12:06 / Filesize : 298 KB / Number-of Response : 1030
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました



1 名前:デフォルトの名無しさん [2019/02/04(月) 21:22:10.08 ID:9MrdxUVg.net]
★当スレにRubyのソースコード類を書くことを禁ず
☆Ruby等、Pythonではないプログラミング言語での回答類を書くことも禁ず

このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。

エラーを解決したいときはエラー表示や環境(バージョン/IDEまたはcommand line/OS)を略さずに書き込んで下さい。
騙りが頻発しています。質問する方は一時的なトリップをつけることを検討して下さい。
次スレは >>985 辺りで

前スレ
くだすれPython(超初心者用) その40
mevius.5ch.net/test/read.cgi/tech/1542874174/


◆PythonのHome Page
www.python.org/

◆まとめwiki
ttp://python.rdy.jp/

◆Pythonのソースコードをそのまま5ちゃんにコピペすると
  インデントが崩れるので
  こういうところ↓にはってきてください
ttp://ideone.com/      Pythonするにはぷち手間あるのがめんどうかなぁ
ttp://codepad.org/      ほぼ直感的に使える。Run codeボタンあり。
ttp://pastebin.com/     まずまずシンプル。
ttp://dpaste

560 名前:デフォルトの名無しさん [2019/03/06(水) 00:06:23.49 ID:3F/qov+q.net]
>>540
はいです

561 名前:デフォルトの名無しさん [2019/03/06(水) 00:10:06.28 ID:XQpJaTFA.net]
インタプリンタでこれ実行したらFalseなんですけど何をもってFalseと判断してるのか分かりません
(1,3,5) < (1,2,7)

562 名前:デフォルトの名無しさん mailto:sage [2019/03/06(水) 00:10:39.87 ID:R/1sU7PR.net]
分岐のコメントってifの上か下、どちらが良いでしょうか

# 処理内容はxxx
if flg
# 処理内容はxxx
処理内容…

563 名前:デフォルトの名無しさん mailto:sage [2019/03/06(水) 00:55:19.44 ID:oR6mPeK7.net]
>>542
そうですか

564 名前:デフォルトの名無しさん [2019/03/06(水) 00:56:10.88 ID:3F/qov+q.net]
>>542
falseになる理由を教えてください

565 名前:デフォルトの名無しさん mailto:sage [2019/03/06(水) 00:59:18.54 ID:PXi0ytZJ.net]
>>545
前から順番に比較していって同じなら次を比較し、異なるならそこで結果を返す

この場合は3と2を比較して3 < 2 は False となる

566 名前:デフォルトの名無しさん [2019/03/06(水) 01:37:14.91 ID:Wfp2djOX.net]
>>542
(a,b,c) < (d,e,f) は a<d or b<e or c<f と同じ

567 名前:デフォルトの名無しさん mailto:sage [2019/03/06(水) 02:12:47.95 ID:ctS44w1M.net]
お前ら嘘ばっか教えるんじゃないよ
(1,3,5) < (1,2,7)

135 < 127の比較、当然 135がデカいからFalse
>>542 絶対、信じろ

568 名前:デフォルトの名無しさん mailto:sage [2019/03/06(水) 02:23:21.55 ID:Uli2bEJM.net]
>>539-541
Ruby なら文字列に、掛け算(*)演算子も定義されているから、これだけ

puts "abc" * 3
#=> abcabcabc



569 名前:デフォルトの名無しさん mailto:sage [2019/03/06(水) 05:37:29.57 ID:MPL4boGu.net]
リスト内を小さい順に並び替えて行く処理を書いてみた。

https://ideone.com/iK3JYA

上記ソースをリスト内包表現で実現できそうで色々試したりしましたがうまく行きませんでした。
もしリスト内包表現で表現できるならどう書けばよいのかご提示宜しくお願いします。

570 名前:デフォルトの名無しさん mailto:sage [2019/03/06(水) 05:37:46.06 ID:A0Y4tMZt.net]
>>547

>>> (1,3,5) < (1,2,7)
False
>>> 1<1 or 3<2 or 5<7
True

>>548

>>> (1,3,5) < (1,2,7,9)
False
>>> 135 < 1279
True

571 名前:デフォルトの名無しさん [2019/03/06(水) 07:42:57.04 ID:3F/qov+q.net]
>>546
>>547
>>551
ありがとうございます。
理解できました

572 名前:デフォルトの名無しさん mailto:sage [2019/03/06(水) 08:25:20.58 ID:bBth0ZZS.net]
>>542 正式ドキュメントのチュートリアル 5.8に詳しく書いてある。
要素を最初から辞書的に1つずつ比較。片方の要素がなくなれば終わり。
適切な比較順序がない場合は、インタープリターは TypeError 例外を発生させます。

(1, 2, 3) < (1, 2, 4)
[1, 2, 3] < [1, 2, 4]
'ABC' < 'C' < 'Pascal' < 'Python'
(1, 2, 3, 4) < (1, 2, 4)
(1, 2) < (1, 2, -1)
(1, 2, 3) == (1.0, 2.0, 3.0)
(1, 2, ('aa', 'ab')) < (1, 2, ('abc', 'a'), 4)

(1,2,3)<(1,'2',4) は、エラーになる。

573 名前:デフォルトの名無しさん mailto:sage [2019/03/06(水) 08:51:37.17 ID:f/NWPYTA.net]
>>549
死ね

574 名前:デフォルトの名無しさん mailto:sage [2019/03/06(水) 11:29:05.92 ID:R/1sU7PR.net]
withってどういう時に使うのが良いでしょうか
明示的に「これを中心にしたブロックです」と言いたいということでしょうか
変数に入れるのではダメですか?

575 名前:デフォルトの名無しさん [2019/03/06(水) 12:44:10.04 ID:qZuvgmSh.net]
>>555
例えばファイルの読み書きの時
withを使うとブロックを抜けた時に自動でcloseされる
途中でエラーが出てもちゃんとcloseしてくれる

自前のクラスでも__enter__()と__exit__()を実装しておくとwithに入る時と出る時に呼び出されるので、前処理と後処理を忘れずにしたい時に使える

576 名前:デフォルトの名無しさん mailto:sage [2019/03/06(水) 12:47:48.19 ID:R/1sU7PR.net]
>>556
ありがとうございます
これは便利ですね

577 名前:デフォルトの名無しさん [2019/03/06(水) 12:58:50.97 ID:pP8e2GTT.net]
>>> [print(f'u{ord(_):04x}') for _ in 'いろは']
u3044
u308d
u306f
[None, None, None]

>>> [print(f'{_:02x}') for _ in 'いろは'.encode('utf-8')]
e3
81
84
e3
82
8d
e3
81
af
[None, None, None, None, None, None, None, None, None]

578 名前:デフォルトの名無しさん mailto:sage [2019/03/06(水) 16:16:53.92 ID:w73Hgmg1.net]
>>556
C#のusingと理解すればよき?



579 名前:デフォルトの名無しさん mailto:sage [2019/03/06(水) 17:10:04.23 ID:+4ROOaYr.net]
>>558 _ って何を表してるんだろうと思ったら、_ 1文字でも変数名として使えるんだね。
こう言う使い方は良いね。

580 名前:デフォルトの名無しさん mailto:sage [2019/03/06(水) 18:21:37.77 ID:kGjUBYU2.net]
>>539-541
import sys
d='abcde'
c=0
while 1:
  sys.stdout.write(d)
  c+=1
  if c % 5 == 0:
    sys.stdout.write('\n')
  else:
    sys.stdout.write(' ')

581 名前:デフォルトの名無しさん mailto:sage [2019/03/06(水) 18:57:59.23 ID:2Etc0l5z.net]
>>561 何でそんなしち面倒臭いことするの? そもそもstdoutなんて必要ないだろ。 それに無限ループは絶対にダメ。
そんなことするくらいなら、それこそ

print(' abcde '*5, '\n ')
で済む話。 複数行にしたければお好きなだけループで回せば良い。

582 名前:デフォルトの名無しさん mailto:sage [2019/03/06(水) 19:18:18.39 ID:kGjUBYU2.net]
>>562
printつかうと余計な改行はいるだろ

583 名前:デフォルトの名無しさん [2019/03/06(水) 19:22:31.40 ID:nP+qIuYQ.net]
print('abcde', end='')
とか
sys.stdout.write('abcde')
とか
面倒なのは許せ

584 名前:デフォルトの名無しさん mailto:sage [2019/03/06(水) 19:24:34.96 ID:2Etc0l5z.net]
>>563 1つのprint で書けば済む話。

585 名前:デフォルトの名無しさん mailto:sage [2019/03/06(水) 19:30:59.83 ID:2Etc0l5z.net]
>>564 ヘェ〜、勉強になる。

>>> print(1,end=''),print(2)
12
(None, None)

このNone はなんで出るの? なんなの?

586 名前:デフォルトの名無しさん mailto:sage [2019/03/06(水) 19:36:11.71 ID:b/S1njE3.net]
>>566
「関数」というのは本来「なんらかの計算をして値を返すもの」
だからどんな関数も必ず何らかの値を返す 単に複数の処理をひとつにまとめただけで値を返す必要のないものでもな
printは画面に文字列を表示するだけのものなので本来は値を返す必要はないんだが
だからってわざわざ関数とは別の仕組みを作るのは面倒臭い
だから「None(値なし)を返す関数」という形式で実装されているわけだ

587 名前:デフォルトの名無しさん mailto:sage [2019/03/06(水) 19:40:21.23 ID:b/S1njE3.net]
ちなみに一応「値を返す関数」と「値を返さない手続き」を別の枠組みとして扱っているプログラミング言語も存在する
VBAのFunctionとSubがそうだ

588 名前:デフォルトの名無しさん mailto:sage [2019/03/06(水) 20:04:28.41 ID:2Etc0l5z.net]
勉強になるな。
下手な入門書より2chの方がためになることも多い。 まだ入門書も適当に読み飛ばしてる段階だけど。
2ch の記事は入門者のモチベーションを高めてくれる。



589 名前:デフォルトの名無しさん mailto:sage [2019/03/06(水) 21:04:59.01 ID:XsTs8xzo.net]
ふーん

590 名前:デフォルトの名無しさん mailto:sage [2019/03/06(水) 21:45:22.45 ID:muSUG44X.net]
>>373
Pydroid3

591 名前:デフォルトの名無しさん mailto:sage [2019/03/06(水) 23:15:48.67 ID:2MUQBf9Y.net]
ツンデレ関数 print()

592 名前:デフォルトの名無しさん [2019/03/07(木) 00:29:00.90 ID:1sghIh7a.net]
オライリーのPythonチュートリアル分かりにくいい
これを元に資格試験を作ってるんだよね?

593 名前:デフォルトの名無しさん [2019/03/07(木) 00:35:34.48 ID:FPeGgUJ/.net]
>>573
資格試験ってなんだ?
公式サイトの和訳のやつなら
Web版が随時アップデートされてるよ

594 名前:デフォルトの名無しさん mailto:sage [2019/03/07(木) 00:53:48.36 ID:l1bMfloe.net]
>>573
Pythonに資格試験なんて存在しません
非公式の資格詐欺は知らんけど

595 名前:デフォルトの名無しさん [2019/03/07(木) 01:01:50.93 ID:1sghIh7a.net]
>>574
>>575
資格試験って言い方が間違ってたらすまん
Python 3 エンジニア認定基礎試験てのを受けるんだけど
それの認定教材がオライリーのやつでwebで見てるんやけど
分かりにくいなって思ったそれだけ

596 名前:デフォルトの名無しさん mailto:sage [2019/03/07(木) 01:15:05.56 ID:k6ZLJER9.net]
>>573 試験範囲がそこから出されると言うだけの話だよ。
公式チュートリアルと変わりない。 それの書き写しがオライリーのだから。

どちらも全くの初心者には難しいと感じるみたいだから、そう言う人は先ずその前に超初心者用的な入門書をいくつか読んだ方が良いのでは?
その類は対して読むのに時間はかからない。 ネットに落ちてるものでも十分。 ただし、自分で書いて練習することが重要。
jupyter でもなんでも良いから確認する環境を作ること。 読むだけでは身につかない。

597 名前:572 [2019/03/07(木) 01:20:20.63 ID:FPeGgUJ/.net]
>>576
洋書特有の文体だから慣れてないと違和感あるけど
言語のチュートリアルとしては良い方の部類だよ
ただ他の言語をマスターしてることが前提のところあるから
ガチ入門者なら国産の本を勧める

NECがスポンサーの試験か・・・
Pythonに力入れてるイメージはないがどうなんだろ

598 名前:デフォルトの名無しさん mailto:sage [2019/03/07(木) 02:47:07.76 ID:7hJ/R58z.net]
       .,、- ' `´  ̄ ̄` ''‐ 、
      ,r'´           .`ヽ、
    /.      -t‐'''l´ .`l'‐t、 .\
   /´.        'lliiiill   lliiii!.  ヽ,
  ./       __  i,_,ノ   .i, ,!    ',  な、なんなんですか…?
  {       (´__,)    ,..., ~ (`ヽ l
  .l       - 、..,_    .l_ i  ,、-"'-、 l  ここ、どこですか…?
  .l           `i  .l,_ソ f´    .l
  ',          ノ     .l,     ,'    どうして私、こんなとこに貼られてるんですか…?
   '、       ,.、-'          .,'
   'i、  ー一 '´            /':,
    l ヽ,               ノ  }
    .l  `‐、,_          ._,.-.'   ,'
    l    `‐- 、,........,..、-‐'`     /
    .\_     ノ  l       ,/
      `'''ー‐ '´   ヽ、   _, -'
                 ̄ ̄



599 名前:デフォルトの名無しさん mailto:sage [2019/03/07(木) 02:50:45.25 ID:bl19yUau.net]
殺人ピンク玉は去れ

600 名前:デフォルトの名無しさん mailto:sage [2019/03/07(木) 03:49:17.97 ID:9XzeaP/N.net]
>>529

Decimal で文字列使う

https://i.imgur.com/QQ0npTS.jpg

601 名前:デフォルトの名無しさん mailto:sage [2019/03/07(木) 09:12:07.95 ID:wzWG3iLc.net]
3000円もする専門書買うよりさ、わからないことがあったらネットで調べれば無料で答えがみつかるよ。
英文でも翻訳ソフト使えばいいだけだし。
ネットで調べても答えが見つけられないやつは、そもそもプログラミングに向いてないんじゃないか。

602 名前:デフォルトの名無しさん mailto:sage [2019/03/07(木) 09:42:09.79 ID:E2eXaClF.net]
公式チュートリアルで良いだろ。

Japanese 指定して一括ダウンロードすればPDFが大量にある
その中のtutorial 開くと日本語訳 tutorial (pdf版)が入手できる

603 名前:デフォルトの名無しさん mailto:sage [2019/03/07(木) 09:50:54.08 ID:IMd+ImAh.net]
ソース嫁からググれカスに移行したが今ではググったらカスばっか。

604 名前:デフォルトの名無しさん mailto:sage [2019/03/07(木) 11:38:00.92 ID:Gktreo0e.net]
LearnPython.orgやCodeacademyみたいにWeb上でインタラクティブシェル開いて
一つ一つお題を実行させる形式のも良いんじゃない。
読んでるだけじゃなかなか身につかないよ

605 名前:デフォルトの名無しさん [2019/03/07(木) 14:15:07.44 ID:N/cPeE83.net]
>>567
そういえば

>>> print(1)
1

だとNoneは表示されないのに

>>> print(1, end=''),print(2)
12
(None, None)

のときだけ表示されるのは変だと思わない?

606 名前:デフォルトの名無しさん mailto:sage [2019/03/07(木) 14:31:29.61 ID:E2eXaClF.net]
>>586 下はタプルだからだろ。

607 名前:デフォルトの名無しさん [2019/03/07(木) 15:40:41.57 ID:lgGD2eax.net]
>>586
None単体の場合は表示されないようにインタラクティブシェルがなってる

>>> None
>>>

608 名前:デフォルトの名無しさん [2019/03/07(木) 16:03:31.61 ID:aOVGrksh.net]
>>566
>>> print(1, end='') or print(2)
12



609 名前:デフォルトの名無しさん mailto:sage [2019/03/07(木) 16:38:38.56 ID:UepKFInK.net]
以下のURLを参考に、フォントファイルから画像を描画しようと思っています
指定した文字がフォントファイルにあるかどうかの判定は、どのようにすれば良いでしょうか?

d.hatena.ne.jp/nakamura001/20101228/1293522309

それとも一度描画して、真っ白かどうかで判定・・・しかないでしょうか

pprintで取得したところ、参照のような感じと思いますが、以下のようになりました。
<PIL.Image.Image image mode=RGB size=256x256 at 0x13FF7DEE2E8>

610 名前:デフォルトの名無しさん [2019/03/07(木) 16:58:16.83 ID:aOVGrksh.net]
freetypeならFT_Get_Char_Index

611 名前:デフォルトの名無しさん [2019/03/07(木) 17:01:47.98 ID:aOVGrksh.net]
ここも参考になるかな
https://qiita.com/496_/items/f6efb650dcf7e9d2dfe4

612 名前:デフォルトの名無しさん mailto:sage [2019/03/07(木) 17:34:33.92 ID:UepKFInK.net]
>>591-592
ありがとうございます
使い方を教えていただけないでしょうか

引数が二個必要とかいてると思うのですが
https://www.freetype.org/freetype2/docs/reference/ft2-base_interface.html#FT_Get_Char_Index

実際に二個設定するとエラーがでます
import pprint
import freetype
face = freetype.Face('C:/Users/a/font/src.ttc')
pprint.pprint(freetype.FT_Get_Char_Index(face,"33"))

これはエラーになります

import pprint
import freetype
pprint.pprint(freetype.FT_Get_Char_Index("33"))

OSError: exception: access violation writing 0x000001CA5F00FF01

お助け下さい

613 名前:デフォルトの名無しさん [2019/03/07(木) 17:49:06.09 ID:aOVGrksh.net]
先にinit呼べ

614 名前:デフォルトの名無しさん [2019/03/07(木) 17:53:31.19 ID:aOVGrksh.net]
FreeTypeの使い方 https://qiita.com/496_/items/6d2540e26d66c9ed5f9a
OpenTypeの仕様前編 https://qiita.com/496_/items/f6efb650dcf7e9d2dfe4
OpenTypeの仕様中編 https://qiita.com/496_/items/4f8327fe741cf0c87736
OpenTypeの仕様後編 https://qiita.com/496_/items/02f2d63fe4bd5603e4dc

615 名前:デフォルトの名無しさん [2019/03/07(木) 19:18:41.40 ID:aOVGrksh.net]
FONT_PATH = b'mikaP.ttf'

ft2 = ctypes.windll.freetype
ft2lib = ctypes.c_void_p()
ft2.FT_Init_FreeType(ctypes.byref(ft2lib))
face = ctypes.c_void_p()
font_path = ctypes.create_string_buffer(FONT_PATH)
ft2.FT_New_Face(ft2lib, font_path, 0, ctypes.byref(face))
idx = ft2.FT_Get_Char_Index(face, b'A'[0])
print(f'{idx:04x}') # 0023
idx = ft2.FT_Get_Char_Index(face, ord('あ'))
print(f'{idx:04x}') # 07bd
ft2.FT_Done_Face(face)
ft2.FT_Done_FreeType(ft2lib)

一応動いた

616 名前:デフォルトの名無しさん [2019/03/07(木) 19:21:06.42 ID:aOVGrksh.net]
idx = ft2.FT_Get_Char_Index(face, ord('鷗'))
print(f'{idx:04x}') # 38c1
idx = ft2.FT_Get_Char_Index(face, ord('𠮟'))
print(f'{idx:04x}') # 0000

617 名前:デフォルトの名無しさん mailto:sage [2019/03/07(木) 20:31:42.10 ID:VtililUQ.net]
>>581
これ何使ってんの?
スマホだよね?

618 名前:デフォルトの名無しさん mailto:sage [2019/03/07(木) 20:32:20.69 ID:VtililUQ.net]
>>582
いい本に出逢えばそれに越したことはない



619 名前:デフォルトの名無しさん mailto:sage [2019/03/07(木) 21:37:32.00 ID:D1nw//Ty.net]
>>598

Pythonista 3
iPad, iPhone のアプリ

620 名前:デフォルトの名無しさん [2019/03/08(金) 01:56:52.91 ID:FktPmjXq.net]
i = 10
def num(arg=i):
print(arg)

i = 7
num()
iはどちらもグローバル変数ですよね?
関数の中身変えて7の方を出力させることってできますか?

621 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 02:04:22.64 ID:Nky3or7z.net]
def num(arg=None):
arg == i
print(arg)

622 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 02:05:04.82 ID:Nky3or7z.net]
def num(arg=None):
_arg = i
_print(arg)
の誤り

623 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 02:15:56.15 ID:5FsfaYFV.net]
>>601

https://i.imgur.com/2LoxSbi.jpg

624 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 02:20:26.52 ID:5FsfaYFV.net]
>>603

https://i.imgur.com/FNgAPWr.jpg

625 名前:デフォルトの名無しさん [2019/03/08(金) 02:47:32.14 ID:FktPmjXq.net]
>>604
ありがとうございます
でも7になる理由がわかりません。
どういった処理になるのか教えて欲しいです、

626 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 06:55:10.03 ID:49yeJutG.net]
>>600
ありがとー

627 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 11:24:52.69 ID:enrIbZX0.net]
>>606
i = 10
def num(arg=i):
 print(arg)

i = 7
num()

この場合は、def を定義するときにarg= でarg のデフォルト値をセットする。
この時の i は 10だろ。 まだ下の行は実行されていないんだから。

i = 10
def num(arg=None):
 arg == i
 print(arg)

i = 7
num()

この時のnum内の実行文は実行されたときに動くんだから、i=7 がセットされた値を参照する事になる。
関数のデフォルト値は関数を定義したときに決定される。 関数内の実行文は実行時に決定される。

628 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 11:33:20.13 ID:5FsfaYFV.net]
>>608
>この時の i は 10だろ。 まだ下の行は実行されていないんだから。


実行されるときの i は7だろ。



629 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 12:03:17.67 ID:JVGfVyzo.net]
問題はprint(arg)が実行される時のargの値でしょ?
def num(arg=i):
の時に、argにはiへの参照が渡されるんじゃ無くて、iの値が渡されるってだけ。

630 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 13:20:03.26 ID:enrIbZX0.net]
>>609 def と言うのが何かを考えよう。 def で関数を定義する。その時点でパラメータのデフォルト値も確定する。
つまりパラメータのデフォルト値は関数の定義時点で確定する。 実行時ではない。 デフォルト値がころころ変わったりするものか。

631 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 13:35:58.82 ID:5FsfaYFV.net]
それこの実行結果の前でも同じこと言えんの?

https://i.imgur.com/LmkiE6A.jpg

632 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 13:36:28.88 ID:0Uig+6Kq.net]
仕様ですな

デフォルト引数の式は関数が定義されるときにただ一度だけ評価され、同じ "計算済みの" 値が呼び出しのたびに使用されることを意味します。

https://docs.python.org/ja/3.6/reference/compound_stmts.html#function-definitions

633 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 13:39:30.34 ID:0Uig+6Kq.net]
>>612
デフォルト引数じゃないしw
引数渡しちゃってるしw

634 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 13:57:33.85 ID:JVGfVyzo.net]
>>612
真面目にやってんならこれは恥ずかしい。

635 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 14:02:30.13 ID:j3nR25S+.net]
ガイガイ音頭踊っとれや…(嘆息)

636 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 14:12:04.85 ID:1m9JjIZU.net]
おもしろかったぞw

637 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 14:51:41.35 ID:enrIbZX0.net]
>>612 デフォルトが解っていないみたいだな。 これとまったく同じことなんだぞ。

def num(arg=10)
 print(arg)

print(num(7)) #> 7
print(num()) #> 10

638 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 14:53:37. ]
[ここ壊れてます]



639 名前:91 ID:enrIbZX0.net mailto: >>618 printが2重になってたな。 []
[ここ壊れてます]

640 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 15:17:08.58 ID:E9FXn3JR.net]
勉強になったな!

641 名前:デフォルトの名無しさん [2019/03/08(金) 16:07:05.72 ID:eYLLL/Dr.net]
よくはまるのは default=[] にしたとき

642 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 16:35:59.46 ID:DUow6Thg.net]
二次元配列からの取り出しで、

X = hoge[:, [2,3]]
Y = hoge[:, 0]

って書かれている時、具体的にどこからどこまで取り出しているのでしょうか?

643 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 17:17:55.67 ID:54yPjEY7.net]
>>612

def と言うのが何かを考えよう。 def で関数を定義する。その時点でパラメータのデフォルト値も確定する。
つまりパラメータのデフォルト値は関数の定義時点で確定する。 実行時ではない。 デフォルト値がころころ変わったりするものか。

つまり、関数定義時点で、i=10 とデフォルト値が確定する。実行時ではない。デフォルト値が、10から7にころころ変わったりするものか。だから、結果は10なんだよ
…ってあれ?

644 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 17:20:46.97 ID:54yPjEY7.net]
仕様ですな

デフォルト引数の式は関数が定義されるときにただ一度だけ評価され、(つまり10と評価)同じ "計算済みの" 値(つまり10)が呼び出しのたびに使用されることを意味します。

https://docs.python.org/ja/3.6/reference/compound_stmts.html#function-definitions

見事に結果が違うな
下手に言葉でルール説明しなくていいから、インタプリタに動作アルゴリズムをそのまま公開してほしいわ

645 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 17:41:30.86 ID:SfpbmzlL.net]
ちょっと何言ってんだか分かんないw

646 名前:デフォルトの名無しさん [2019/03/08(金) 17:48:01.52 ID:+fF7voFW.net]
>>622
Xは2列目と3列目
Yは0列目

647 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 18:34:43.25 ID:qP6cz7Aj.net]
>>624 言語リファレンスは明確に仕様を定義するだけのものだから、理解させるためのものではない。 絶対に間違いがあってはならないから下手な説明はない方が良い。

648 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 19:17:40.56 ID:1m9JjIZU.net]
>>624
>>下手に言葉でルール説明しなくていいから
オイオイ、これ以上分かりやすい説明ないだろう。しかも公式リファレンスだよ

>>インタプリタに動作アルゴリズムをそのまま公開してほしいわ
意味不明w



649 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 20:03:58.48 ID:IGhZvnlG.net]
公式の説明と実際の動作が一致しないんじゃなあ

650 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 20:34:26.69 ID:TVXnQmRl.net]
さすがに釣りでしょう

651 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 21:33:30.47 ID:1m9JjIZU.net]
>>629
その一致しないってコード貼ってみて

652 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 21:35:26.18 ID:5FsfaYFV.net]
>>631


https://i.imgur.com/2LoxSbi.jpg

653 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 21:45:16.90 ID:mz9PUEDs.net]
まじかよこいつ…

654 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 21:47:23.79 ID:JVGfVyzo.net]
>>632
‥あの、最後の行でnum()が実行される前に、i=7にして、print(arg) のargに7入れてますよね。。

655 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 21:48:50.29 ID:6/VZFxCg.net]
>>632
まず関数の中ではprintじゃなくてreturn使えよ

656 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 21:54:12.28 ID:1m9JjIZU.net]
クソー、こんなバカでかい釣針に…

657 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 21:58:20.32 ID:0lCnL4hz.net]
>>632
レベル高すぎて俺分からんが、へんだとPythonを作っているところに
激しく抗議したほうが良いな。

658 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 22:10:29.49 ID:5FsfaYFV.net]
>>634


def と言うのが何かを考えよう。 
def で関数を定義する。その時点でパラメータのデフォルト値も確定する。
つまりパラメータのデフォルト値は関数の定義時点で確定する。 実行時ではない。 
デフォルト値がころころ変わったりするものか。

つまり、関数定義時点で、arg =None とデフォルト値が確定する。実行時ではない。デフォルト値が、None から7にころころ変わったりするものか。だから、結果はNone なんだよ



659 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 22:38:20.41 ID:5FsfaYFV.net]
>>635

https://i.imgur.com/idkGAYZ.jpg

660 名前:デフォルトの名無しさん mailto:sage [2019/03/08(金) 22:44:17.08 ID:5FsfaYFV.net]
>>631

https://i.imgur.com/cVbw05B.jpg






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<298KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef