当スレに★Python以外のプログラミング言語での回答類を書くべからず★
☆「Ruby では」「Rubyでは」をNGワード登録推奨
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。
★Pythonのソースコードはそのまま5ちゃんにコピペするとインデントが崩れるので
↓等のてきとうなソースコード用うpろだに貼ってきてください。
スクショをImgur等にうp といった 手抜き(クソ行為)禁止。
ttp://ideone.com/ デフォ設定はC用のため言語選択ボタン押下がピコ手間かも。
ttp://codepad.org/ ほぼ直感的に使える。Run codeボタンあり。
ttp://pastebin.com/ まずまずシンプル。
ttp://dpaste.com/ とてもシンプル。消えるまでの日数は十分長ーく指定のこと。
ttps://jupyter.org/try (旧try.jupyter.org)ちょっとめんどうそう
◆エラーを解決したい場合は、表示されてるエラー全文(勝手に省略禁止)と
実行環境(Pythonのバージョン・OS名・IDEの種類とバージョン)をシッカリ書くこと。
◇Python公式サイト◇ http://www.python.org/
◇まとめwiki◇ ttp://python.rdy.jp/
〇前スレ〇
くだすれPython(超初心者用) その44【Ruby禁止】
http://mevius.5ch.net/test/read.cgi/tech/1563969768/
探検
くだすれPython(超初心者用) その45【Ruby禁止】
■ このスレッドは過去ログ倉庫に格納されています
2019/10/16(水) 10:17:12.96ID:dCHq3Ix4
256デフォルトの名無しさん
2019/11/23(土) 10:15:03.84ID:EZrHMol+ >>253
解像度を変えても治りません。。。
解像度を変えても治りません。。。
257デフォルトの名無しさん
2019/11/23(土) 10:34:30.18ID:rr4WRS2d >>255
灰色とひとくちにいうが
こいのとうすいの くらいは作っておかないと
コレジャナイ感が出そうなんだが。
tkinterの色指定についての説明を読めよ。
「How to change the colour of everything in a tkinter GUI」とかでぐぐるもよし。
英語アレルギーなら
端末を窓から投げ捨てろ
灰色とひとくちにいうが
こいのとうすいの くらいは作っておかないと
コレジャナイ感が出そうなんだが。
tkinterの色指定についての説明を読めよ。
「How to change the colour of everything in a tkinter GUI」とかでぐぐるもよし。
英語アレルギーなら
端末を窓から投げ捨てろ
258デフォルトの名無しさん
2019/11/23(土) 10:54:16.58ID:3WxMvOwa きっとブレゼンハムのアルゴリズムか何かで線を引いてるだけだろ
ならアンチエイリアスを自前で実装すればいい
ならアンチエイリアスを自前で実装すればいい
259デフォルトの名無しさん
2019/11/23(土) 12:14:52.78ID:B0RgWWc8 pyautoguiでchromeの操作を自動化したいんだけど、chromeでリンクをクリックしたあと、ページの完了が終わるまで待つには、sleep使う以外にはどうしたらええんやろか
260デフォルトの名無しさん
2019/11/23(土) 13:01:09.50ID:MYL7zca4 var array =[
[0,1,0,1],
[0,1,0,0]
]
var array2 =[
[0,0,0,0],
[0,0,0,0]
]
配列がすべてゼロだったら、という条件はどう書くんですかね
[0,1,0,1],
[0,1,0,0]
]
var array2 =[
[0,0,0,0],
[0,0,0,0]
]
配列がすべてゼロだったら、という条件はどう書くんですかね
261デフォルトの名無しさん
2019/11/23(土) 13:11:12.94ID:rr4WRS2d262デフォルトの名無しさん
2019/11/23(土) 13:13:50.16ID:rr4WRS2d >>260
中身全部を0かどうか順番にチェック
0じゃないものを発見した時点で0以外をみつけたフラグをおっ立ててチェックを抜ける(break)
チェックする部分の次のところでは
0以外発見!のフラグがたってるかどうかで
処理をわける
中身全部を0かどうか順番にチェック
0じゃないものを発見した時点で0以外をみつけたフラグをおっ立ててチェックを抜ける(break)
チェックする部分の次のところでは
0以外発見!のフラグがたってるかどうかで
処理をわける
263デフォルトの名無しさん
2019/11/23(土) 13:58:42.54ID:Lev/ciM6 そういえばwindwosのminesweeperをポチポチするプログラムを
pythonで書いて自動化して完成させた途端
msがminesweeperのデザイン変更しやがって糞な思いした
画面ポチポチするプログラムは仕様変更に対して効率悪い
pythonで書いて自動化して完成させた途端
msがminesweeperのデザイン変更しやがって糞な思いした
画面ポチポチするプログラムは仕様変更に対して効率悪い
264デフォルトの名無しさん
2019/11/23(土) 14:00:46.78ID:Lev/ciM6265デフォルトの名無しさん
2019/11/23(土) 14:04:58.22ID:rr4WRS2d >>263
ボタンの上からn番目みたいなアッタマワルイ指定方法とか、
画面上の座標指定とかじゃなく、
クリックできるようになってるもの固有の何かを指定しておいたとしても、
大幅デザイン変更に遭遇したら泥縄になるのは
さけられない。
あきらメロン
マインスイーパみたいに
マス目があるの絶対な!みたいな
なにがしかの決まりがあるものならば、
マス目の区切りを自動検出して
チェス盤や将棋盤のごとくx軸y軸順番にマス目番号を振っちゃう
みたいなのを作っておけば、
色合いとかかえられた際は
マス目の自動検出をちょいちょい手直しするだけで済むが。
ボタンの上からn番目みたいなアッタマワルイ指定方法とか、
画面上の座標指定とかじゃなく、
クリックできるようになってるもの固有の何かを指定しておいたとしても、
大幅デザイン変更に遭遇したら泥縄になるのは
さけられない。
あきらメロン
マインスイーパみたいに
マス目があるの絶対な!みたいな
なにがしかの決まりがあるものならば、
マス目の区切りを自動検出して
チェス盤や将棋盤のごとくx軸y軸順番にマス目番号を振っちゃう
みたいなのを作っておけば、
色合いとかかえられた際は
マス目の自動検出をちょいちょい手直しするだけで済むが。
266デフォルトの名無しさん
2019/11/23(土) 14:05:28.41ID:rr4WRS2d267デフォルトの名無しさん
2019/11/23(土) 14:09:23.86ID:pGKd1Nh3 サイズ固定でいいなら if array == [[0]*4]*2: とか。
268デフォルトの名無しさん
2019/11/23(土) 14:18:32.96ID:8xX8HZu8269デフォルトの名無しさん
2019/11/23(土) 14:20:07.06ID:B0RgWWc8270デフォルトの名無しさん
2019/11/23(土) 14:25:20.39ID:rr4WRS2d >>269
「要素が出た」≠「クリックできる状態」
「要素が出た」≠「クリックできる状態」
272デフォルトの名無しさん
2019/11/23(土) 15:48:30.46ID:rr4WRS2d273デフォルトの名無しさん
2019/11/23(土) 16:20:50.22ID:EZrHMol+274デフォルトの名無しさん
2019/11/23(土) 16:28:27.88ID:6kdTmmEk >>273
プログラマ向いてないよ
プログラマ向いてないよ
275デフォルトの名無しさん
2019/11/23(土) 17:03:55.37ID:EZrHMol+276デフォルトの名無しさん
2019/11/23(土) 17:10:04.04ID:lLsY3+nO アドバイスくれと言う割に、挑戦する前から自分には出来ませんって
やる気すら無いやつに誰も教えてくれるわけ無いじゃん
やる気すら無いやつに誰も教えてくれるわけ無いじゃん
277デフォルトの名無しさん
2019/11/23(土) 17:13:09.06ID:EZrHMol+278デフォルトの名無しさん
2019/11/23(土) 17:23:00.52ID:EZrHMol+ おすすめの翻訳機はありますか?
279デフォルトの名無しさん
2019/11/23(土) 17:37:34.31ID:EZrHMol+ 僕は昔フラッシュのアクションスクリプトを勉強してたんですが
フラッシュではジャギはかからずにアンチエイリアスが自動でかかりました
パイソンはできないのですか?
フラッシュではジャギはかからずにアンチエイリアスが自動でかかりました
パイソンはできないのですか?
280デフォルトの名無しさん
2019/11/23(土) 18:00:42.08ID:Lev/ciM6 気になるならPILでお絵描きしてtkのcanvasに貼れ
281デフォルトの名無しさん
2019/11/23(土) 18:06:19.44ID:EZrHMol+282デフォルトの名無しさん
2019/11/23(土) 18:26:54.09ID:B0RgWWc8 >>270
とりあえずpyautogui.locateOnScreenメソッドで次クリックするアイコンの画像が出てくるまでループしてsleepする形にしたわ
pyautogui.locateOnScreenは画像がなかったら、ImageNotFoundExceptionの例外を上げるとドキュメントに書いてあるのに、noneを返してくるわ(´・ω・`)
とりあえずpyautogui.locateOnScreenメソッドで次クリックするアイコンの画像が出てくるまでループしてsleepする形にしたわ
pyautogui.locateOnScreenは画像がなかったら、ImageNotFoundExceptionの例外を上げるとドキュメントに書いてあるのに、noneを返してくるわ(´・ω・`)
283デフォルトの名無しさん
2019/11/23(土) 19:21:19.90ID:rr4WRS2d >>282
力技解決報告とりまおつ
力技解決報告とりまおつ
284デフォルトの名無しさん
2019/11/23(土) 21:06:40.36ID:MYL7zca4 var array2 =[
[0,0,0,0],
[0,0,0,0]
]
func _ready():
for i in array2.size():
for j in array2[i].size():
if array2[i][j] != 0:
print("true")
else:
print("false")
配列にゼロが含まれるかどうかチェックしたいんですが、これだとfalseが8回帰ってきますよね
あるかないか 1度のみの結果を返すように出来ますか
ちなみにgodotです
ありがとう
[0,0,0,0],
[0,0,0,0]
]
func _ready():
for i in array2.size():
for j in array2[i].size():
if array2[i][j] != 0:
print("true")
else:
print("false")
配列にゼロが含まれるかどうかチェックしたいんですが、これだとfalseが8回帰ってきますよね
あるかないか 1度のみの結果を返すように出来ますか
ちなみにgodotです
ありがとう
285デフォルトの名無しさん
2019/11/23(土) 21:16:54.64ID:rr4WRS2d286デフォルトの名無しさん
2019/11/23(土) 21:17:51.31ID:rr4WRS2d 近頃
あっちのスレでもこっちのスレでも
GodotをPythonだと思って湧いてくるあふぉが多すぎるから
次からは
1に
「godotはスレチ&板チ (・∀・)カエレ!!!」を
明記した方がいいとおもう件。 >>980あたりの人へ
↑についてどうよ? >>all
あっちのスレでもこっちのスレでも
GodotをPythonだと思って湧いてくるあふぉが多すぎるから
次からは
1に
「godotはスレチ&板チ (・∀・)カエレ!!!」を
明記した方がいいとおもう件。 >>980あたりの人へ
↑についてどうよ? >>all
287デフォルトの名無しさん
2019/11/23(土) 21:22:39.07ID:MYL7zca4 帰ります(´・ω・`)
288デフォルトの名無しさん
2019/11/23(土) 21:24:36.78ID:rr4WRS2d289デフォルトの名無しさん
2019/11/23(土) 21:26:50.79ID:NPpi8aJ+ まあ、冗談だけど
x=sum(array2,[])
x.sort()
x[0]==x[-1]==0
x=sum(array2,[])
x.sort()
x[0]==x[-1]==0
290デフォルトの名無しさん
2019/11/23(土) 21:30:52.40ID:fygFNKSM >>269
Ruby で、Selenium WebDriver なら、
driver.manage.timeouts.implicit_wait で、要素の検索のタイムアウト秒数を設定できる。
何も設定しなければ、10秒でタイムアウト
options = Selenium::WebDriver::Chrome::Options.new
options.add_option(:detach, true) # ブラウザを操作しない
options.add_argument('--start-maximized') # 画面最大
driver = Selenium::WebDriver.for :chrome, options: options
driver.manage.timeouts.implicit_wait = 30 # 要素の検索の timeout
Ruby で、Selenium WebDriver なら、
driver.manage.timeouts.implicit_wait で、要素の検索のタイムアウト秒数を設定できる。
何も設定しなければ、10秒でタイムアウト
options = Selenium::WebDriver::Chrome::Options.new
options.add_option(:detach, true) # ブラウザを操作しない
options.add_argument('--start-maximized') # 画面最大
driver = Selenium::WebDriver.for :chrome, options: options
driver.manage.timeouts.implicit_wait = 30 # 要素の検索の timeout
291デフォルトの名無しさん
2019/11/24(日) 09:31:23.38ID:oYE0zbvZ292デフォルトの名無しさん
2019/11/24(日) 09:38:13.39ID:s1tpy+px293デフォルトの名無しさん
2019/11/24(日) 09:39:25.68ID:oYE0zbvZ294デフォルトの名無しさん
2019/11/24(日) 23:49:11.18ID:Qx41XXLY すまん誰かエスパーしてぇ………
anacondaでpython3入れたんだけどコマンドプロントでpython3 --versionやっても何も結果が返されない……
anacondaのインストールフォルダに行けばpython3いるしjupyter notebookとかは普通に使えるのん…
なんで…なんでぇ……コマンドプロントのいじわるぅ……
anacondaでpython3入れたんだけどコマンドプロントでpython3 --versionやっても何も結果が返されない……
anacondaのインストールフォルダに行けばpython3いるしjupyter notebookとかは普通に使えるのん…
なんで…なんでぇ……コマンドプロントのいじわるぅ……
295デフォルトの名無しさん
2019/11/24(日) 23:55:59.64ID:Qx41XXLY ごめんね…自己解決したよ
スレ汚してごめんね…!
スレ汚してごめんね…!
296デフォルトの名無しさん
2019/11/25(月) 12:30:19.00ID:pjJuONFZ 書き込む前に考えろ
297デフォルトの名無しさん
2019/11/25(月) 13:12:54.83ID:TS/Fak3X いや書き込むと解決するんだよ
298デフォルトの名無しさん
2019/11/25(月) 14:06:00.42ID:MglL2GPD 書き込む前にテディベアに相談しろ
299デフォルトの名無しさん
2019/11/25(月) 14:41:48.11ID:p8g7UnzP なんでこの言語は
オブジェクト指向なのに
関数で属性を所得することがあるんだ?
なんか意図があるのか?
オブジェクト指向なのに
関数で属性を所得することがあるんだ?
なんか意図があるのか?
300デフォルトの名無しさん
2019/11/25(月) 14:55:04.98ID:meWbd2fX 関数で属性を取得したい、という意図があるんだろ
それ以上のどういう説明が欲しいんだ
それ以上のどういう説明が欲しいんだ
301デフォルトの名無しさん
2019/11/25(月) 14:56:32.15ID:r/eYGe8L オブジェクト指向じゃなくマルチパラダイム言語だぞ
302デフォルトの名無しさん
2019/11/25(月) 15:00:10.38ID:oN5ryHTE 後付けOOPだからしゃーない
さらに作者は関数型も嫌いだから中途半端なサポートになってる
さらに作者は関数型も嫌いだから中途半端なサポートになってる
303デフォルトの名無しさん
2019/11/25(月) 15:24:30.38ID:p8g7UnzP 初心者に最適みないな煽り
で解説書でてるが
宣言いらないし、見た目はシンプルだからこそ
易しい言語ではないな
で解説書でてるが
宣言いらないし、見た目はシンプルだからこそ
易しい言語ではないな
304デフォルトの名無しさん
2019/11/25(月) 15:36:06.86ID:6PZ0TCvi 日本語でおk
305デフォルトの名無しさん
2019/11/25(月) 16:21:52.74ID:MOiXV6c7306デフォルトの名無しさん
2019/11/25(月) 19:28:04.23ID:WAjfk16n この引数受け取って < 又は > を関数側で判断したいんだけど どう記述すりゃいいの?
qsort(lambda x, y: x < y, [2, 4, -90, 3, 10])
単純に変数に入れて出力してみたけど
def qsort(a, b):
........print("a= ",a)
........print("b= ",b)
不等号 < > が全く見えません
a= <function <lambda> at 0x000001D564F7B4C8>
b= [2, 4, -90, 3, 10]
qsort(lambda x, y: x < y, [2, 4, -90, 3, 10])
単純に変数に入れて出力してみたけど
def qsort(a, b):
........print("a= ",a)
........print("b= ",b)
不等号 < > が全く見えません
a= <function <lambda> at 0x000001D564F7B4C8>
b= [2, 4, -90, 3, 10]
307デフォルトの名無しさん
2019/11/25(月) 21:13:40.05ID:OXWkeipl308デフォルトの名無しさん
2019/11/25(月) 21:40:31.09ID:VwBWJhfV https://github.com/AmbientDataInc/EnvSensorBleGw/blob/master/src/gw_RPi/env2ambientBS.py
これを動かしてみると、
NameError: name 'companyID' is not defined
とエラーになってしまいます。
51行目からの関数「def send2ambient(dataRow):」の中の
52行目の
if companyID == 'ffff': とif文がありますが、どこにもcompanyIDという変数は見当たらない気がします。
56行目〜59行目、52行目を削除して、53行目〜55行目のインデントを戻せば正常に動きました。
companyIDはどうやって取得するんでしょうか?
これを動かしてみると、
NameError: name 'companyID' is not defined
とエラーになってしまいます。
51行目からの関数「def send2ambient(dataRow):」の中の
52行目の
if companyID == 'ffff': とif文がありますが、どこにもcompanyIDという変数は見当たらない気がします。
56行目〜59行目、52行目を削除して、53行目〜55行目のインデントを戻せば正常に動きました。
companyIDはどうやって取得するんでしょうか?
309デフォルトの名無しさん
2019/11/25(月) 21:52:08.16ID:VwBWJhfV >>308
多分解決しました
value[0:4]にcomanyIDが入っていたので、
77行目でvalue[0:4]も渡して、
51行目の引数にcomanyIDを加えてやると動きました
これであってますか?
多分解決しました
value[0:4]にcomanyIDが入っていたので、
77行目でvalue[0:4]も渡して、
51行目の引数にcomanyIDを加えてやると動きました
これであってますか?
311デフォルトの名無しさん
2019/11/26(火) 05:32:54.67ID:+E2vdhzD >>36
自前でsort_byみたいなのを作るのかな
自前でsort_byみたいなのを作るのかな
312デフォルトの名無しさん
2019/11/26(火) 11:43:30.34ID:x6kjeL8J パッケージ、モジュールについて質問です。
import numpy as np
a = np.random.rand(10)
という記述があったとします。
np はパッケージ
random はモジュール
rand() は関数
であっていますか?
np がパッケージだとすると、パッケージは関数や定数などを含むことができてしまっておかしいような気もします。
このあたりについて解説をお願いいたします。
import numpy as np
a = np.random.rand(10)
という記述があったとします。
np はパッケージ
random はモジュール
rand() は関数
であっていますか?
np がパッケージだとすると、パッケージは関数や定数などを含むことができてしまっておかしいような気もします。
このあたりについて解説をお願いいたします。
313デフォルトの名無しさん
2019/11/26(火) 11:53:00.18ID:sOexhNbU あってる場合もあるし
あってない場合もある
あってない場合もある
314デフォルトの名無しさん
2019/11/26(火) 12:04:40.62ID:n4j/cOk3 中身みたらいいんじゃないの?
import numpyがPackage
import randomがSub-Package
randがfunctionってコメント書いてる
import numpyがPackage
import randomがSub-Package
randがfunctionってコメント書いてる
315デフォルトの名無しさん
2019/11/26(火) 12:07:13.67ID:sOexhNbU 質問者の本来の意図は判らんが
質問文だけ読めば
import hoge as fuga
fuga.hage.hige()
の一般的なことを聴いてる可能性もある
ケースバイケースとしか言いようがない
質問文だけ読めば
import hoge as fuga
fuga.hage.hige()
の一般的なことを聴いてる可能性もある
ケースバイケースとしか言いようがない
316デフォルトの名無しさん
2019/11/26(火) 12:44:26.92ID:P1h37MBR プログラミング始めて2ヶ月弱です。
今TwitterのsearchAPIを使用してtkinterのメインフレーム内のテキストウィジェットに検索結果を追加していくプログラムを書いてまして
threadを使用してリアルタイムに追記させていくことは出来たのですが停止がうまくいきません。
ttps://teratail.com/questions/147319
上記URLの様にスタートとストップを分けて書いているのですがストップ時に止まらず応答無しになります。
tryの前に上記URL内のwhile not stop_flag:を置いてループさせているので
ループ中try内のプログラムにif stop_flagがtrueの時にbreakする条件を追加すれば想定道理に動きますでしょうか?
仕事中で詳しくは記述出来ませんがこの考え方で合っているのか確認したく質問させていただきました。
今TwitterのsearchAPIを使用してtkinterのメインフレーム内のテキストウィジェットに検索結果を追加していくプログラムを書いてまして
threadを使用してリアルタイムに追記させていくことは出来たのですが停止がうまくいきません。
ttps://teratail.com/questions/147319
上記URLの様にスタートとストップを分けて書いているのですがストップ時に止まらず応答無しになります。
tryの前に上記URL内のwhile not stop_flag:を置いてループさせているので
ループ中try内のプログラムにif stop_flagがtrueの時にbreakする条件を追加すれば想定道理に動きますでしょうか?
仕事中で詳しくは記述出来ませんがこの考え方で合っているのか確認したく質問させていただきました。
317デフォルトの名無しさん
2019/11/26(火) 13:31:57.20ID:dAEqoOXB 仕事中は仕事しろ
318デフォルトの名無しさん
2019/11/26(火) 13:36:13.13ID:R22VgyT6 これが噂に聞く寺尾駆動開発……!
319デフォルトの名無しさん
2019/11/26(火) 13:40:30.59ID:n4j/cOk3 while not stop_flagって書いてるし意味わからんな
320デフォルトの名無しさん
2019/11/26(火) 16:38:03.43ID:jVdruz6/321デフォルトの名無しさん
2019/11/26(火) 19:07:33.15ID:x6kjeL8J322デフォルトの名無しさん
2019/11/26(火) 22:00:33.85ID:x6kjeL8J 柴田望洋さんのPythonの本に、
'\\\\\\\\'
と入力すると
'\\\\'
が出力されると書いてありますが、JupyterLab上で実行すると、
'\\\\\\\\'
が出力されます。
これはどういうことでしょうか?
'\\\\\\\\'
と入力すると
'\\\\'
が出力されると書いてありますが、JupyterLab上で実行すると、
'\\\\\\\\'
が出力されます。
これはどういうことでしょうか?
323デフォルトの名無しさん
2019/11/26(火) 22:08:10.56ID:aDj7fQzJ 純粋なリテラルなんだろ
324デフォルトの名無しさん
2019/11/26(火) 22:13:19.59ID:x6kjeL8J もう一つ質問させてください。
id(1)
とするとある大きな正の整数が出力されます。
オブジェクト「1」のIDだと思います。
ある複雑なオブジェクト(あるクラスのインスタンスなど)にIDが割り当てられているのは理解できます。
おそらくインスタンスを作ったときにIDが割り当てられるのだと思います。
整数の場合にはどうなんでしょうか?我々は整数を使うときに整数のインスタンスを作ったりはしません。
このあたりのからくりについて教えてください。
id(1)
とするとある大きな正の整数が出力されます。
オブジェクト「1」のIDだと思います。
ある複雑なオブジェクト(あるクラスのインスタンスなど)にIDが割り当てられているのは理解できます。
おそらくインスタンスを作ったときにIDが割り当てられるのだと思います。
整数の場合にはどうなんでしょうか?我々は整数を使うときに整数のインスタンスを作ったりはしません。
このあたりのからくりについて教えてください。
325デフォルトの名無しさん
2019/11/26(火) 22:17:46.99ID:pgCzIwzp >>322 >>324
ここは取り下げて↓をアゲたればー?
Julia Juno Jupyter part1
http://mevius.5ch.net/test/read.cgi/tech/1455271513/
ここは取り下げて↓をアゲたればー?
Julia Juno Jupyter part1
http://mevius.5ch.net/test/read.cgi/tech/1455271513/
326デフォルトの名無しさん
2019/11/26(火) 22:29:07.19ID:6BcoKqX2 >>324
id()で表示されるのは実装にもよるが単純にメモリ内のどの位置にそのオブジェクトがあるかじゃなかったかな?
いちいちidが割り振られるのは単純にプログラム内で一度出現した値を再度読み込むときにすぐ読み込めるようにするためだった気がする。
id(1)とかだと同じプログラム内だとずっと同じidになっているがid(10000000000000000000000000000000000)とか数値が大きくなると
ずっと同じ数値を保持するためには莫大なメモリが必要になるから、いちいち同一のidを保持したりせずに毎回値が変わるのがわかると思う
それと、1が整数のインスタンスじゃないというのは勘違いだ。 isinstance(1,int)とすれば整数1が整数のインスタンスだとわかる
プログラムする側が明示的にインスタンスを作らないだけで内部的にはインスタンスになっている
また、C言語などにおいては整数は「単純な値」と言えなくもないが、少なくともpythonにおいては数値もオブジェクト、
dir(1)してみればわかるが1にもさまざまなメソッドがついている
id()で表示されるのは実装にもよるが単純にメモリ内のどの位置にそのオブジェクトがあるかじゃなかったかな?
いちいちidが割り振られるのは単純にプログラム内で一度出現した値を再度読み込むときにすぐ読み込めるようにするためだった気がする。
id(1)とかだと同じプログラム内だとずっと同じidになっているがid(10000000000000000000000000000000000)とか数値が大きくなると
ずっと同じ数値を保持するためには莫大なメモリが必要になるから、いちいち同一のidを保持したりせずに毎回値が変わるのがわかると思う
それと、1が整数のインスタンスじゃないというのは勘違いだ。 isinstance(1,int)とすれば整数1が整数のインスタンスだとわかる
プログラムする側が明示的にインスタンスを作らないだけで内部的にはインスタンスになっている
また、C言語などにおいては整数は「単純な値」と言えなくもないが、少なくともpythonにおいては数値もオブジェクト、
dir(1)してみればわかるが1にもさまざまなメソッドがついている
327デフォルトの名無しさん
2019/11/26(火) 22:33:53.44ID:YnEDvBjE >>324
https://docs.python.org/ja/3/library/functions.html#id
https://docs.python.org/ja/3/c-api/long.html#c.PyLong_FromLong
>>> a = 256
>>> b = 256
>>> a is b
True
>>> a = 257
>>> b = 257
>>> a is b
False
https://docs.python.org/ja/3/library/functions.html#id
https://docs.python.org/ja/3/c-api/long.html#c.PyLong_FromLong
>>> a = 256
>>> b = 256
>>> a is b
True
>>> a = 257
>>> b = 257
>>> a is b
False
328デフォルトの名無しさん
2019/11/27(水) 04:07:41.39ID:sALdvXXc 0x100が境なんだね
329デフォルトの名無しさん
2019/11/27(水) 08:24:04.15ID:XCw5dykM330デフォルトの名無しさん
2019/11/27(水) 09:18:32.47ID:KJahAAhq >>322
つまりprint('\\\\\\\\')はPythonで表記したものではないと
つまりprint('\\\\\\\\')はPythonで表記したものではないと
331デフォルトの名無しさん
2019/11/27(水) 09:47:06.21ID:0U9h+SK3 JUpypてrが何か知らんがMacだと¥と\が違うんだろ
332デフォルトの名無しさん
2019/11/27(水) 14:09:09.81ID:ngGnUYLD >>299
え?俺便利だと思って多用してるけど....
関数側で引数がリストならfor文で引数内の要素で再帰呼出し、リストじゃなければ
引数を処理みたいな感じで使ってる。
(簡単な例を書き込もうとしたらブロックされた...わかりにくくてすんまそん)
え?俺便利だと思って多用してるけど....
関数側で引数がリストならfor文で引数内の要素で再帰呼出し、リストじゃなければ
引数を処理みたいな感じで使ってる。
(簡単な例を書き込もうとしたらブロックされた...わかりにくくてすんまそん)
333デフォルトの名無しさん
2019/11/27(水) 14:40:54.97ID:R3eAH8fN334デフォルトの名無しさん
2019/11/27(水) 16:09:47.41ID:yvOcgkAY335デフォルトの名無しさん
2019/11/27(水) 16:24:01.31ID:ulQKgCH1 The Zen of Pythonの一部の翻訳についてですが、柴田望洋さんは、
「Errors should never pass silently.」を「エラーを黙って渡してはならない。」と訳しています。
エラーを渡すというようなことが実際にPythonであるのでしょうか?
「Errors should never pass silently.」を「エラーを黙って渡してはならない。」と訳しています。
エラーを渡すというようなことが実際にPythonであるのでしょうか?
336デフォルトの名無しさん
2019/11/27(水) 16:26:47.69ID:ulQKgCH1 エラーを黙って見過ごしてはならない。
みたいな意味かと思ったのですが。
みたいな意味かと思ったのですが。
337デフォルトの名無しさん
2019/11/27(水) 17:52:41.97ID:b0aYXQt/338デフォルトの名無しさん
2019/11/27(水) 19:02:19.69ID:ymKEnJ4Y >>336の意味であってる
「黙って通過させてはならない」的な意味
「エラーを黙って渡してはならない」は完全な誤訳
Errors should never be passed silentlyや
You should never pass errors silentlyじゃないと
エラーを渡すという意味にはならない
「黙って通過させてはならない」的な意味
「エラーを黙って渡してはならない」は完全な誤訳
Errors should never be passed silentlyや
You should never pass errors silentlyじゃないと
エラーを渡すという意味にはならない
339デフォルトの名無しさん
2019/11/27(水) 20:33:56.00ID:hknmBY+P 例外の握りつぶしとかだろ。
例外をキャッチしたけど、何もせずに、そのまま処理を継続したとか
Jupyter Notebook(JN)は、Python, Julia, Ruby などで使うIDE だろ。
VSCode みたいなもの
Bash, PowerShell などのシェル経由でも、
シングル/ダブルクォーテーションで、エスケープのタイミングが違ってくる。
Linux/Windows で書き方が異なる
シェルに渡すときに、既にエスケープされているか、されていないのか
エスケープ文字を、エディタで設定できるかも知れない
例外をキャッチしたけど、何もせずに、そのまま処理を継続したとか
Jupyter Notebook(JN)は、Python, Julia, Ruby などで使うIDE だろ。
VSCode みたいなもの
Bash, PowerShell などのシェル経由でも、
シングル/ダブルクォーテーションで、エスケープのタイミングが違ってくる。
Linux/Windows で書き方が異なる
シェルに渡すときに、既にエスケープされているか、されていないのか
エスケープ文字を、エディタで設定できるかも知れない
340デフォルトの名無しさん
2019/11/27(水) 20:43:49.33ID:R3eAH8fN341デフォルトの名無しさん
2019/11/27(水) 21:37:06.71ID:OMjrfaFS pygameは商用利用できますか?
342デフォルトの名無しさん
2019/11/27(水) 21:48:56.24ID:gPxE2uPM >>340
どんなに小さな確率でも、と言いたいのかもしれないけど巨大な下図になってるぞw
どんなに小さな確率でも、と言いたいのかもしれないけど巨大な下図になってるぞw
343デフォルトの名無しさん
2019/11/27(水) 21:49:28.61ID:gPxE2uPM >>342
数だった。人のことは言えないな。
数だった。人のことは言えないな。
344デフォルトの名無しさん
2019/11/27(水) 22:17:55.37ID:ap410XA+ >>340
passがダメだとして何なら良いわけ?
passがダメだとして何なら良いわけ?
345デフォルトの名無しさん
2019/11/27(水) 22:18:57.75ID:vYtjQlD0 >>341
可能だが、pyinstallerのような方法で事実上の静的リンクを行った場合には
LGPLに従ってpygameが含まれている実行ファイル全体の再配布を許可せねばならない
つまり俺が買ったらそれを10円で再販してやる
可能だが、pyinstallerのような方法で事実上の静的リンクを行った場合には
LGPLに従ってpygameが含まれている実行ファイル全体の再配布を許可せねばならない
つまり俺が買ったらそれを10円で再販してやる
346デフォルトの名無しさん
2019/11/27(水) 22:20:16.38ID:1UHKBbgP >>344
passを書くくらいならエラー処理せずに普通にエラー発生させた方がマシ
passを書くくらいならエラー処理せずに普通にエラー発生させた方がマシ
347デフォルトの名無しさん
2019/11/27(水) 22:27:15.42ID:vYtjQlD0 >>341
補足
あと、リンクの方法に関わらず、そのソフトウェアを買った俺はそれをリバースエンジニアリングし、改造できる
俺のスキルをもってすればライセンス認証の回避は容易であり、お前はそれを禁止できない
補足
あと、リンクの方法に関わらず、そのソフトウェアを買った俺はそれをリバースエンジニアリングし、改造できる
俺のスキルをもってすればライセンス認証の回避は容易であり、お前はそれを禁止できない
348347
2019/11/27(水) 22:31:35.68ID:vYtjQlD0 すまん、俺が金払って買ったなら認証を回避する意味はなかったな
問題は、ダウンロードは無料だが継続して利用するにはライセンス認証が必要になるというような典型的な配布パターンだ
この場合、俺は金を払わずに改造してライセンス認証を突破し、タダでそれを使う
そしてその方法をWebで公開する
お前はそれを禁止できない
なぜならLGPLライブラリを使用しているからだ
問題は、ダウンロードは無料だが継続して利用するにはライセンス認証が必要になるというような典型的な配布パターンだ
この場合、俺は金を払わずに改造してライセンス認証を突破し、タダでそれを使う
そしてその方法をWebで公開する
お前はそれを禁止できない
なぜならLGPLライブラリを使用しているからだ
349デフォルトの名無しさん
2019/11/27(水) 22:42:28.92ID:ap410XA+350デフォルトの名無しさん
2019/11/27(水) 22:48:46.79ID:R3eAH8fN351デフォルトの名無しさん
2019/11/27(水) 22:57:52.16ID:ap410XA+ >>350
例外の種類ごとに異なる対処が必要なら分岐するがそうでないならその限りではない。
何か対処すべきことがあればそれを記述するが他にすることがなければpassでよい。
おまえさんは何か変な教条主義に囚われているんではないかね?
例外の種類ごとに異なる対処が必要なら分岐するがそうでないならその限りではない。
何か対処すべきことがあればそれを記述するが他にすることがなければpassでよい。
おまえさんは何か変な教条主義に囚われているんではないかね?
352デフォルトの名無しさん
2019/11/27(水) 23:06:11.22ID:vYtjQlD0 >>350
悪いけど、最初から個別の例外について虱潰しに対応しようとするのは典型的なアンチパターンだよ
あまりにも手間がかかりすぎるし、変更に対して非常に弱いコードになる。
例外処理で死守すべき大原則は、アプリを落とさないこと、綺麗に回復すること、の2点だけだ。
その上で、必要に応じて丁寧な個別対応をしてもよい。
まずアプリを落とさないことだが、WebのリクエストハンドラであったりUIのイベントハンドラであったりバッチ処理の一番大本のループであったり、
「ここまで戻れば確実に回復できる」という箇所で全ての例外をキャッチし、リトライやエラーメッセージの表示等を行って回復する。
次に綺麗に回復すること、これは、適切にwithやfinally等を使用して例外発生時に適切な後片付けを行うことだ。
この2点が守れていれば例外処理は完璧だが、場合によっては個別対応することで早期に回復できたり、より適切なエラーメッセージをユーザーに表示できたりするケースがある。
しかしそれはあくまでオプションにすぎない。
悪いけど、最初から個別の例外について虱潰しに対応しようとするのは典型的なアンチパターンだよ
あまりにも手間がかかりすぎるし、変更に対して非常に弱いコードになる。
例外処理で死守すべき大原則は、アプリを落とさないこと、綺麗に回復すること、の2点だけだ。
その上で、必要に応じて丁寧な個別対応をしてもよい。
まずアプリを落とさないことだが、WebのリクエストハンドラであったりUIのイベントハンドラであったりバッチ処理の一番大本のループであったり、
「ここまで戻れば確実に回復できる」という箇所で全ての例外をキャッチし、リトライやエラーメッセージの表示等を行って回復する。
次に綺麗に回復すること、これは、適切にwithやfinally等を使用して例外発生時に適切な後片付けを行うことだ。
この2点が守れていれば例外処理は完璧だが、場合によっては個別対応することで早期に回復できたり、より適切なエラーメッセージをユーザーに表示できたりするケースがある。
しかしそれはあくまでオプションにすぎない。
353デフォルトの名無しさん
2019/11/27(水) 23:22:24.86ID:ymKEnJ4Y354デフォルトの名無しさん
2019/11/27(水) 23:28:50.58ID:hknmBY+P Ruby on Rails で、RSpec で、TDD から学びなおせw
355デフォルトの名無しさん
2019/11/27(水) 23:31:50.95ID:vYtjQlD0 >>353
単に無視することが適切な回復なのであればそれで正しいよ
大抵はそうではないが、だからといって例外が発生した瞬間に直上でキャッチしたところで対処のしようがないケースがほとんど
ほとんどの例外は単純にキャッチせずにスルーし、上の方で纏めてキャッチしてエラーを表示したりすることになる
単に無視することが適切な回復なのであればそれで正しいよ
大抵はそうではないが、だからといって例外が発生した瞬間に直上でキャッチしたところで対処のしようがないケースがほとんど
ほとんどの例外は単純にキャッチせずにスルーし、上の方で纏めてキャッチしてエラーを表示したりすることになる
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 「日本はパンダがいなくなる状況に直面するだろう」 中国メディア、専門家の見方伝える [♪♪♪★]
- ネット殺到「高市総理の責任」「完全に高市リスク」「負けるな」中国が水産物輸入停止→流石に総理批判の声も「どう責任取る?」 ★11 [樽悶★]
- 止まらぬ「日本売り」 高市財政への懸念で進む金利上昇と円安 ★2 [蚤の市★]
- 外国人の犯罪率は日本人の1.72倍 警察庁が短期滞在者除いた数字を参院内閣委で答弁★2 [七波羅探題★]
- 朝日新聞のタイトル修正が中国逆ギレの火種か SNSで批判相次ぐ★2 [♪♪♪★]
- ひろゆき氏 高市首相の台湾有事発言 「日本が得たものあまりない。経済的なマイナスは明確に存在」 [冬月記者★]
- 【高市悲報】大暴落 [115996789]
- 【悲報】国会議員の給料アップ法改正、自民と維新で喧嘩し始めるWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
- 30代男性の部屋がすごい [577451214]
- 示談成立したから刑罰起訴やめとくわw←金で犯罪揉み消してるだけやん
- 16のヒッキー女に構って
- ネトウヨ「レアアースは日本でも採れるから輸入しなくてもOK!」 なお精製コストがバカ高く有害物質が大量に出ることは全く知らない模様 [314039747]
