当スレに★Python以外のプログラミング言語での回答類を書くべからず★
派生言語はそれぞれ専スレがある(この板にあるとは限らない)ので、そっち池。
「Ruby」「Rails」「某言語では」「クソチョンw」をNGワード登録推奨。荒らしは、完全スルー放置が一番きらいです。
このスレッドは「お勉強」スレのほうには書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を、勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますので、お礼は Python の布教と初心者の救済をお願いします。
★エラーを解決したい場合★は、
表示されたエラーの全文(勝手に省略やスクショうp等の横着クソ行為禁止)と、
実行環境(Pythonのバージョン・OSとIDEの種類およびバージョン)をシッカリ書くこと。
Pythonの★ソースコードをそのまま5ちゃんに貼るとインデントが崩れてチヌ★
【【【複数の連続半角スペースはなにもなかったことにされる&タブは普通には入れられない】】】掲示板の仕様なので、
プログラム文は↓等の、いわゆるコードうp用サイトに貼ってこいください。
ttps://techiedelight.com/compiler/ Run Code機能あり。
ttp://ideone.com/ デフォ設定はC用のため、言語選択ボタン押下がピコ手間かも。
ttp://codepad.org/ ほぼ直感的に使える。Run codeボタンあり。
ttp://pastebin.com/ まずまずシンプル。
ttp://dpaste.com/ とてもシンプル。消えるまでの日数は十分長ーく指定のこと。
◇Python公式◇ http://www.python.org/
◇まとめwiki◇ ttp://python.rdy.jp/wiki.cgi
〇前スレ〇 【まず1嫁】くだすれPython(超初心者用) その54
https://mevius.5ch.net/test/read.cgi/tech/1623240344/
次スレたては >>985 あたりが挑戦する。
### END OF TEMPLATE ###
探検
【まず1嫁】くだすれPython(超初心者用) その55
■ このスレッドは過去ログ倉庫に格納されています
2021/10/01(金) 15:46:47.17ID:9qOHXj6D
302デフォルトの名無しさん
2021/10/25(月) 20:51:56.35ID:LSRIz4jp リスト内包表記で得られたリスト
[’金額¥150’,’金額¥222’,’’,’’,’金額¥0’,’金額¥465’]のうち、’’を’金額¥0’に置換するにはどのようにしたらいいですか?
[money.replace("","¥0") for money in moneys]ではだめでした。
[’金額¥150’,’金額¥222’,’’,’’,’金額¥0’,’金額¥465’]のうち、’’を’金額¥0’に置換するにはどのようにしたらいいですか?
[money.replace("","¥0") for money in moneys]ではだめでした。
303デフォルトの名無しさん
2021/10/25(月) 21:10:11.44ID:utaK2F0U >>302
>>> ['金額¥0' if money == '' else money for money in moneys ]
['金額¥150', '金額¥222', '金額¥0', '金額¥0', '金額\0', '金額\465']
ていうか、動くコード貼れよ
>>> ['金額¥0' if money == '' else money for money in moneys ]
['金額¥150', '金額¥222', '金額¥0', '金額¥0', '金額\0', '金額\465']
ていうか、動くコード貼れよ
304デフォルトの名無しさん
2021/10/25(月) 21:43:12.61ID:i1JdqDPj > お前は毎朝起きるたびに俺に負けたことを思い出すよ^^
あー、ホンッとに思い出すなあ(笑)
キチガイの嘘つきの低レベルFランの、
朝鮮ゴキブリBot君は、
チョン独特の「なにもできないけど俺のほうがジャップより偉い!」的な
ことはよーくわかったよ。
ホントなにもできない朝鮮ゴキブリBot君!
クソチョンw
在日朝鮮人は強姦と窃盗してる犯罪者!
在日朝鮮人は皆殺しにすべし!
あー、ホンッとに思い出すなあ(笑)
キチガイの嘘つきの低レベルFランの、
朝鮮ゴキブリBot君は、
チョン独特の「なにもできないけど俺のほうがジャップより偉い!」的な
ことはよーくわかったよ。
ホントなにもできない朝鮮ゴキブリBot君!
クソチョンw
在日朝鮮人は強姦と窃盗してる犯罪者!
在日朝鮮人は皆殺しにすべし!
305デフォルトの名無しさん
2021/10/25(月) 22:45:53.76ID:sv7Zp2+/ >>301
コールバック関数のシグニチャが違えば違うAPIを用意するのが普通
Pythonに限らずJS以外の言語ではそれが普通だと思う
Rubyで言うeachとeach_with_index
HogeをIterableにして
print([f”_{item}” for item in hoge]) や
print([f”{i}_{item}” for i, item in enumerate(hoge)]) することのほうがPythonでは多いと思う
コールバック関数のシグニチャが違えば違うAPIを用意するのが普通
Pythonに限らずJS以外の言語ではそれが普通だと思う
Rubyで言うeachとeach_with_index
HogeをIterableにして
print([f”_{item}” for item in hoge]) や
print([f”{i}_{item}” for i, item in enumerate(hoge)]) することのほうがPythonでは多いと思う
306デフォルトの名無しさん
2021/10/26(火) 18:26:21.05ID:58PW1UcQ javascriptに限った話じゃないんだけど、
Max Retry、っていったら純粋に"リトライ"の回数でカウントする?それとも総実行回数を指す?
MaxRetry=5なら
初回の1回含めて最大6回やるのか、5回なのか。
なんか気になって。
Max Retry、っていったら純粋に"リトライ"の回数でカウントする?それとも総実行回数を指す?
MaxRetry=5なら
初回の1回含めて最大6回やるのか、5回なのか。
なんか気になって。
307デフォルトの名無しさん
2021/10/26(火) 18:34:57.12ID:qzAOjqD0 そんな名前絶対につけないけど、その名前なら6回でしょ
308デフォルトの名無しさん
2021/10/26(火) 19:14:57.68ID:BNqSw8pO 最初の試行は"Re"tryじゃないから6回だわな
309デフォルトの名無しさん
2021/10/27(水) 13:56:39.52ID:0D9sPP+O ???????????????????
?????????????????????????????
?????????????????????????????
310デフォルトの名無しさん
2021/10/27(水) 16:50:18.70ID:rwCBpLuv pyodbcの接続時にスキーマまで指定する方法ありませんか
接続文字列に入れてもエラーになってしまいます
接続文字列に入れてもエラーになってしまいます
311デフォルトの名無しさん
2021/10/27(水) 18:14:05.36ID:CtZ0vCqQ 変数の名付けでちょうど良い具合がわからない
たとえば文字列の長さの変数をstr1_wordlengthとしたんだけど
---------------------
str1 = 'apple'
str1_wordlength = len(str1) # 5
#文字列と文字数を格納する辞書dic1をつくる
dic1 = {str1_wordlength: str1} # {5: 'apple'}
---------------------
「str1_wordlength ならたぶん意味が通じると思うけど長過ぎじゃね? 毎回これ書くのか?」とも思うし
この変数「名付けするの面倒だからいっそ a でいいんじゃね?」とも思うし
「そもそも変数作る必要あるか? len(str1)は変数名より短いじゃん?」とも思うし
練習問題やってるうちはぶっちゃけ何でも良いと思うんだが
後々を考えるとどうしたらいいんだろうな、と
たとえば文字列の長さの変数をstr1_wordlengthとしたんだけど
---------------------
str1 = 'apple'
str1_wordlength = len(str1) # 5
#文字列と文字数を格納する辞書dic1をつくる
dic1 = {str1_wordlength: str1} # {5: 'apple'}
---------------------
「str1_wordlength ならたぶん意味が通じると思うけど長過ぎじゃね? 毎回これ書くのか?」とも思うし
この変数「名付けするの面倒だからいっそ a でいいんじゃね?」とも思うし
「そもそも変数作る必要あるか? len(str1)は変数名より短いじゃん?」とも思うし
練習問題やってるうちはぶっちゃけ何でも良いと思うんだが
後々を考えるとどうしたらいいんだろうな、と
312デフォルトの名無しさん
2021/10/27(水) 18:15:13.83ID:sQbCpqyG >>310
DSN側で設定しておくんじゃない?
https://github.com/mkleehammer/pyodbc/wiki/Connecting-to-databases
ここのDB別の文書読んでみて
DSN側で設定しておくんじゃない?
https://github.com/mkleehammer/pyodbc/wiki/Connecting-to-databases
ここのDB別の文書読んでみて
313デフォルトの名無しさん
2021/10/28(木) 02:31:25.25ID:bnoFQANv strの特殊メソッドつかったらprintにも反応するんですね・・
class pr:
_value="aa"
_def __str__(self):
__return self.value+"bb"
p=pr()
print(p)
def __str__の中にエラー処理いれてたらprintでエラー引っかかっていて
気づくのに時間かかりました・・
class pr:
_value="aa"
_def __str__(self):
__return self.value+"bb"
p=pr()
print(p)
def __str__の中にエラー処理いれてたらprintでエラー引っかかっていて
気づくのに時間かかりました・・
314デフォルトの名無しさん
2021/10/28(木) 04:45:57.20ID:Nbft1WLw PythonやDjangoでオススメの本ありますか?
315デフォルトの名無しさん
2021/10/28(木) 06:56:16.71ID:dSweiYMb 特殊メソッドは使わんほうが無難
ていうかPythonはクラス自体使わない方がいい
昔ながらの構造化言語としてシンプルに使うのがベスト
ていうかPythonはクラス自体使わない方がいい
昔ながらの構造化言語としてシンプルに使うのがベスト
316デフォルトの名無しさん
2021/10/28(木) 07:27:59.28ID:p07hGs8T データを構造化するためにclassを使うだろ
317デフォルトの名無しさん
2021/10/28(木) 07:52:44.16ID:xUl7Twuj 今どきクラス使うなとか言うアホは放置で
318デフォルトの名無しさん
2021/10/28(木) 08:10:34.09ID:X05RtFia 関数間で状態を保持するときにのみクラスは有効
319デフォルトの名無しさん
2021/10/28(木) 10:18:44.69ID:MKFZM1zj >>312神
結果的にはファイルdnsで出来ますた
結果的にはファイルdnsで出来ますた
320デフォルトの名無しさん
2021/10/28(木) 12:42:04.06ID:RV1LSDaq PythonでマイクロソフトAccessをDBとして使う実例は多いけど、単にAccessをマクロ起動かける例が無いんです
誰か成功した人は居ますか?
誰か成功した人は居ますか?
321デフォルトの名無しさん
2021/10/28(木) 12:56:15.77ID:XVuwIiyB Access側のマクロのエントリポイント用の関数を造っておく
pywin32でその関数を呼ぶ
pywin32でその関数を呼ぶ
322デフォルトの名無しさん
2021/10/28(木) 13:09:38.96ID:XVuwIiyB323デフォルトの名無しさん
2021/10/28(木) 13:19:37.36ID:RV1LSDaq324デフォルトの名無しさん
2021/10/28(木) 14:14:58.06 from datetime import datetime
now=str(datetime.now())
#2021-10-28 05:12:03.857881
#この文字列を、datetime型に変換したい
_at=now.split(" ")
_at[0]=_at[0].split("-")
_at[1]=_at[1].split(":")
print( datetime(int(_at[0][0]),int(_at[0][1]),int(_at[0][2]),int(_at[1][0]),int(_at[1][1]),int(float(_at[1][2].split("+")[0])) ) )
としたのですがこれってスマートなやり方ではないですよね・・?
ようはstr(datetime)でフォーマットが決まってるのだから、もっと簡単にその文字列からdatetime型に変換できたらいいのに
と思うのですが・・
now=str(datetime.now())
#2021-10-28 05:12:03.857881
#この文字列を、datetime型に変換したい
_at=now.split(" ")
_at[0]=_at[0].split("-")
_at[1]=_at[1].split(":")
print( datetime(int(_at[0][0]),int(_at[0][1]),int(_at[0][2]),int(_at[1][0]),int(_at[1][1]),int(float(_at[1][2].split("+")[0])) ) )
としたのですがこれってスマートなやり方ではないですよね・・?
ようはstr(datetime)でフォーマットが決まってるのだから、もっと簡単にその文字列からdatetime型に変換できたらいいのに
と思うのですが・・
325デフォルトの名無しさん
2021/10/28(木) 14:17:08.33ID:Fr3tDLQH326デフォルトの名無しさん
2021/10/28(木) 14:17:55.41ID:JRDKMzLv datetime.fromisoformat
327デフォルトの名無しさん
2021/10/28(木) 16:09:10.81328デフォルトの名無しさん
2021/10/28(木) 17:41:33.23ID:Nbft1WLw329デフォルトの名無しさん
2021/10/28(木) 17:46:38.21ID:IFkzxSt8 テキストとかだと
list = [0]*10 は [0,0,0,0,0,0,0,0,0,0] になるから初期値作るのに使えるぞ
とか書いてあるのに
list1 = [[0,0,0]]*3
list2 = [[0,0,0],[0,0,0],[0,0,0]]
list3 = [[0,0,0]] + [[0,0,0]] + [[0,0,0]]
print(list1 == list2)
print(list2 == list3)
--------------------
True
True
この結果は両方Trueなんだけど
list1[0][0] = 1
list2[0][0] = 1
list3[0][0] = 1
print(list1)
print(list2)
print(list3)
--------------------------------
[[1, 0, 0], [1, 0, 0], [1, 0, 0]]
[[1, 0, 0], [0, 0, 0], [0, 0, 0]]
[[1, 0, 0], [0, 0, 0], [0, 0, 0]]
こうなるのって結構罠じゃね?
list = [0]*10 は [0,0,0,0,0,0,0,0,0,0] になるから初期値作るのに使えるぞ
とか書いてあるのに
list1 = [[0,0,0]]*3
list2 = [[0,0,0],[0,0,0],[0,0,0]]
list3 = [[0,0,0]] + [[0,0,0]] + [[0,0,0]]
print(list1 == list2)
print(list2 == list3)
--------------------
True
True
この結果は両方Trueなんだけど
list1[0][0] = 1
list2[0][0] = 1
list3[0][0] = 1
print(list1)
print(list2)
print(list3)
--------------------------------
[[1, 0, 0], [1, 0, 0], [1, 0, 0]]
[[1, 0, 0], [0, 0, 0], [0, 0, 0]]
[[1, 0, 0], [0, 0, 0], [0, 0, 0]]
こうなるのって結構罠じゃね?
330デフォルトの名無しさん
2021/10/28(木) 17:54:29.27ID:Mv6YjZts listのコピーはcopyでやれ定期やね
331デフォルトの名無しさん
2021/10/28(木) 17:54:51.49ID:Nbft1WLw332デフォルトの名無しさん
2021/10/28(木) 20:34:34.97ID:o6HAoERy https://gist.github.com/srndpty/43c76d74188884f25716f25a44ef0818
だれか、これpythonに翻訳して。
だれか、これpythonに翻訳して。
333デフォルトの名無しさん
2021/10/28(木) 21:08:20.17ID:WnlLUDNQ os.walkで一発だろ。
334デフォルトの名無しさん
2021/10/28(木) 21:20:53.36ID:3jEWrZM3 django2.2、vscode、venvでプロジェクト作りました
models.py
の
from django import models
が
Import "django.utils" could not be resolved from source Pylance
とエラーになります
解決策ありますか?
因みにdjango3.2で作ったプロジェクトではエラーでませんがpythonインタープリターがPython3.9.7 64-bit ('mysite': venv) ./mysite/bin/pythonとなってます
2.2でのプロジェクトではPython 3.9.7 64-bit /opt/homebrew/bin/python3となってます
models.py
の
from django import models
が
Import "django.utils" could not be resolved from source Pylance
とエラーになります
解決策ありますか?
因みにdjango3.2で作ったプロジェクトではエラーでませんがpythonインタープリターがPython3.9.7 64-bit ('mysite': venv) ./mysite/bin/pythonとなってます
2.2でのプロジェクトではPython 3.9.7 64-bit /opt/homebrew/bin/python3となってます
335デフォルトの名無しさん
2021/10/29(金) 00:14:03.10ID:qT0pkZDa >>329
Ruby では「たのしいRuby」みたいな入門書に書いてあるけど、
配列を初期化する際に、ブロックを渡さないと、
浅いコピー、つまり参照だけのコピーとなり、
実体が1つしかないので、同じオブジェクトを指してしまう
初期化時にブロックを渡すと、3つの実体が作られる
ary = Array.new( 3, [ 0, 0, 0 ] )
ary[ 0 ][ 1 ] = 1
p ary #=> [ [0, 1, 0], [0, 1, 0], [0, 1, 0] ]
ary2 = Array.new( 3 ) { [ 0, 0, 0 ] }
ary2[ 0 ][ 1 ] = 1
p ary2 #=> [ [0, 1, 0], [0, 0, 0], [0, 0, 0] ]
Ruby では「たのしいRuby」みたいな入門書に書いてあるけど、
配列を初期化する際に、ブロックを渡さないと、
浅いコピー、つまり参照だけのコピーとなり、
実体が1つしかないので、同じオブジェクトを指してしまう
初期化時にブロックを渡すと、3つの実体が作られる
ary = Array.new( 3, [ 0, 0, 0 ] )
ary[ 0 ][ 1 ] = 1
p ary #=> [ [0, 1, 0], [0, 1, 0], [0, 1, 0] ]
ary2 = Array.new( 3 ) { [ 0, 0, 0 ] }
ary2[ 0 ][ 1 ] = 1
p ary2 #=> [ [0, 1, 0], [0, 0, 0], [0, 0, 0] ]
336デフォルトの名無しさん
2021/10/29(金) 00:29:20.81ID:qT0pkZDa Ruby on Rails では、Node.js も使うから、
日本人が作った、バージョンマネージャーのanyenv で、
19 言語を、統一した使い方で管理している
Renv, crenv, denv, erlenv, exenv
goenv, hsenv, jenv, jlenv, luaenv
nodenv, phpenv, plenv, pyenv, rbenv
sbtenv, scalaenv, swiftenv, tfenv
which ruby
/home/<ユーザー名>/.anyenv/envs/rbenv/shims/ruby
which node
/home/<ユーザー名>/.anyenv/envs/nodenv/shims/node
venv はPython の標準だけど、多言語を使う際、
各言語のバージョンマネージャーの使い方が異なるから、覚えられない
基本、主要フレームワーク・ゲームエンジンなどは、掌田津耶乃が本を出している。
ただし、猿向きで簡単だけど、知識は少なめだから、1冊目には良い
例えば、Railsでは黒田努の本の方が、本格的
日本人が作った、バージョンマネージャーのanyenv で、
19 言語を、統一した使い方で管理している
Renv, crenv, denv, erlenv, exenv
goenv, hsenv, jenv, jlenv, luaenv
nodenv, phpenv, plenv, pyenv, rbenv
sbtenv, scalaenv, swiftenv, tfenv
which ruby
/home/<ユーザー名>/.anyenv/envs/rbenv/shims/ruby
which node
/home/<ユーザー名>/.anyenv/envs/nodenv/shims/node
venv はPython の標準だけど、多言語を使う際、
各言語のバージョンマネージャーの使い方が異なるから、覚えられない
基本、主要フレームワーク・ゲームエンジンなどは、掌田津耶乃が本を出している。
ただし、猿向きで簡単だけど、知識は少なめだから、1冊目には良い
例えば、Railsでは黒田努の本の方が、本格的
337デフォルトの名無しさん
2021/10/29(金) 02:18:31.85ID:FnWw468S338デフォルトの名無しさん
2021/10/29(金) 04:57:41.89ID:oTw6PnKg vscodeのpylanceのauto importが機能してないんだけど皆は使えてるの?
339デフォルトの名無しさん
2021/10/29(金) 10:21:09.67ID:fhDC1KF/ seleniumを起動してchromeドライバから下記を行うとyahooはすぐにページ接続して遷移できるのに楽天はページ接続に時間がかかります。
seleniumではなく、普通にchromeを起動して手動でurlを入力する場合は楽天もすぐにページに接続できます。
原因や対応わかるかた教えてください。
janlist = ["4976365125510","4976365200934","4976365158013"]
for jan in janlist:
url=f"https://search.rakuten.co.jp/search/mall/{jan}/?filter=fs-fsl&s=2"
driver.get(url)
url=f"https://shopping.yahoo.co.jp/search?p={jan}&X=2"
driver.get(url)
seleniumではなく、普通にchromeを起動して手動でurlを入力する場合は楽天もすぐにページに接続できます。
原因や対応わかるかた教えてください。
janlist = ["4976365125510","4976365200934","4976365158013"]
for jan in janlist:
url=f"https://search.rakuten.co.jp/search/mall/{jan}/?filter=fs-fsl&s=2"
driver.get(url)
url=f"https://shopping.yahoo.co.jp/search?p={jan}&X=2"
driver.get(url)
340デフォルトの名無しさん
2021/10/29(金) 12:21:35.03ID:koELjqeu Selenium内のコンソールログを確認
341デフォルトの名無しさん
2021/10/29(金) 12:24:28.38ID:eVsBtFEb コンソールログってどうやって確認するの?
342デフォルトの名無しさん
2021/10/29(金) 12:32:43.97ID:9CukeuuL >333
os.walk 勉強中。
すっごい便利機能だけど高機能すぎて、forループでサブフォルダーを回していくつもりだったから困惑。
どうすればいいんだ!
os.walk 勉強中。
すっごい便利機能だけど高機能すぎて、forループでサブフォルダーを回していくつもりだったから困惑。
どうすればいいんだ!
343デフォルトの名無しさん
2021/10/29(金) 17:17:25.29ID:d8BIZQAf classの__init__()するclassmethodが使いたいんだけどできますか?
c = Class()
c.method()
を一行で書きたいだけです
Class.method()
c = Class()
c.method()
を一行で書きたいだけです
Class.method()
344デフォルトの名無しさん
2021/10/29(金) 17:24:18.67ID:R4ZBjJpK345デフォルトの名無しさん
2021/10/29(金) 18:16:59.51ID:zHkN81gu pythonの資格って難しいですか?
346デフォルトの名無しさん
2021/10/29(金) 20:26:40.87ID:/8Rm9/az347デフォルトの名無しさん
2021/10/29(金) 20:36:40.03ID:1Pi4hxs1 >>343
import this
import this
348デフォルトの名無しさん
2021/10/29(金) 21:26:19.76ID:AIexy1X9 このページの404エラーの箇所をベースに学習しています
https://docs.djangoproject.com/ja/3.2/intro/tutorial03/
DjangoにHttp404というクラスがあります
Exceptionクラスを継承しています(これはBaseExceptionを継承しています)
コントローラーにてtry文のexceptの中に
raise Http404("これは404です")
を書くと推移先の画面にはPage Not found(404)と表示されます
しかし自分でExceptionを継承した、passが書かれたクラスAを作って上記と同様にこのクラスをraiseすると画面にはA at /polls/
これは404です
と表示されます(Page Not found(404)とは表示されない)
一体どの段階でHttp404クラスに特別な実装が行われたんですか?
https://docs.djangoproject.com/ja/3.2/intro/tutorial03/
DjangoにHttp404というクラスがあります
Exceptionクラスを継承しています(これはBaseExceptionを継承しています)
コントローラーにてtry文のexceptの中に
raise Http404("これは404です")
を書くと推移先の画面にはPage Not found(404)と表示されます
しかし自分でExceptionを継承した、passが書かれたクラスAを作って上記と同様にこのクラスをraiseすると画面にはA at /polls/
これは404です
と表示されます(Page Not found(404)とは表示されない)
一体どの段階でHttp404クラスに特別な実装が行われたんですか?
349デフォルトの名無しさん
2021/10/29(金) 23:15:06.20ID:krcALBmR350デフォルトの名無しさん
2021/10/29(金) 23:43:42.33ID:ZYpuK0cb >>349
おお!
どうもです
後で見てみます
そのexeption.pyでviewなどでraiseされた例外を捕まえてフロントに適切なHttpResponseオブジェクトを送ってるんですかね?あとでそのモジュール見てみます
おお!
どうもです
後で見てみます
そのexeption.pyでviewなどでraiseされた例外を捕まえてフロントに適切なHttpResponseオブジェクトを送ってるんですかね?あとでそのモジュール見てみます
351デフォルトの名無しさん
2021/10/30(土) 01:26:36.60ID:fDTZDMBU >>342
馬鹿には無理
馬鹿には無理
352デフォルトの名無しさん
2021/10/30(土) 10:12:33.06ID:V5MhI+QS >>343
即席だけど何度も使うつもりなら、シングルトンにしておいた方がいいだろう。
class Hoge:
__instance = None
def __new__(cls):
if cls.__instance is None:
cls.__instance = object.__new__(cls)
return cls.__instance
Hoge().method()
即席だけど何度も使うつもりなら、シングルトンにしておいた方がいいだろう。
class Hoge:
__instance = None
def __new__(cls):
if cls.__instance is None:
cls.__instance = object.__new__(cls)
return cls.__instance
Hoge().method()
353デフォルトの名無しさん
2021/10/30(土) 11:36:54.55ID:a9WSKAoR class Klass:
@classmethod
def method(c):
return Klass()
これじゃいかんの
@classmethod
def method(c):
return Klass()
これじゃいかんの
354デフォルトの名無しさん
2021/10/30(土) 12:49:58.82ID:xUY0JK8T 他クラスのインスタンスを生成するならともかく
自クラスなら__init__で対応したほうがいい
自クラスなら__init__で対応したほうがいい
355デフォルトの名無しさん
2021/10/30(土) 17:28:58.03ID:6LdaSTDR >351
ありがとう。walkの使い方わかってきたよ。
フォルダの深さが1段ならできた。2段だと想定外の動きになるのでまだ検討が必要。
多層になるとforで回して掘っていった方が良いのかな?
ありがとう。walkの使い方わかってきたよ。
フォルダの深さが1段ならできた。2段だと想定外の動きになるのでまだ検討が必要。
多層になるとforで回して掘っていった方が良いのかな?
356デフォルトの名無しさん
2021/10/31(日) 02:00:51.68ID:hGI7wBpw Ruby には、walk 無いから、glob でやってる
VB のコードでは、しょっちゅう再帰で、子の階層へ降りていく。
これが典型的な馬鹿の見本w
VB のコードでは、しょっちゅう再帰で、子の階層へ降りていく。
これが典型的な馬鹿の見本w
357デフォルトの名無しさん
2021/10/31(日) 03:36:26.99ID:Fmzj87Tl type(a)で
<class 'sqlalchemy.sql.elements.BooleanClauseList'>
と出るオブジェクトaを
if a==None:
みたいにifに入れたら
Boolean value of this clause is not defined
ってエラーがでました
条件分岐に入れることでそもそもエラーがでる
という今まで経験したことないエラーが出ました
こういう場合、どうやって条件分岐すればいいのでしょうか
<class 'sqlalchemy.sql.elements.BooleanClauseList'>
と出るオブジェクトaを
if a==None:
みたいにifに入れたら
Boolean value of this clause is not defined
ってエラーがでました
条件分岐に入れることでそもそもエラーがでる
という今まで経験したことないエラーが出ました
こういう場合、どうやって条件分岐すればいいのでしょうか
358デフォルトの名無しさん
2021/10/31(日) 04:35:13.37ID:oq4cmHqY a is None
359デフォルトの名無しさん
2021/10/31(日) 06:55:40.09ID:wNGz0WbD 関数Aからしか呼ばれないとわかっている関数Bがある場合、
BをAの内側に定義してしまうスタイルってありですかね
こうすれば見た目にも局所的であるとわかるし、
Aの外からBを呼ぶことはできないから安全と思うのですが
※関数内関数はクロージャっていう機能でも使うらしいんですが、
そっちはよくわからんので置いておくとして…
BをAの内側に定義してしまうスタイルってありですかね
こうすれば見た目にも局所的であるとわかるし、
Aの外からBを呼ぶことはできないから安全と思うのですが
※関数内関数はクロージャっていう機能でも使うらしいんですが、
そっちはよくわからんので置いておくとして…
360デフォルトの名無しさん
2021/10/31(日) 12:40:55.03ID:Fmzj87Tl >>358
ありがとうございますできました!
なぜそうなるのかはわかりませんが一応検証です
from sqlalchemy import and_,or_,text
id_q=or_(*[text("id=1"),text("id=2")])
name_q=or_(*[text('name="tarou"'),text('name="tanaka"')])
q=and_(*[id_q,name_q])
def ck1(q):
_try:
__if q is None:
___print("q is None")
__else:
___print(q)
_except Exception as e:
__print(e)
def ck2(q):
_try:
__if q==None:
___print("q is None")
__else:
___print(q)
_except Exception as e:
__print(e)
print("### is None")
ck1(q)
ck1(None)
print("")
print("### ==None")
ck2(q)
ck2(None)
### is None
(id=1 OR id=2) AND (name="tarou" OR name="tanaka")
q is None
### ==None
Boolean value of this clause is not defined
q is None
ありがとうございますできました!
なぜそうなるのかはわかりませんが一応検証です
from sqlalchemy import and_,or_,text
id_q=or_(*[text("id=1"),text("id=2")])
name_q=or_(*[text('name="tarou"'),text('name="tanaka"')])
q=and_(*[id_q,name_q])
def ck1(q):
_try:
__if q is None:
___print("q is None")
__else:
___print(q)
_except Exception as e:
__print(e)
def ck2(q):
_try:
__if q==None:
___print("q is None")
__else:
___print(q)
_except Exception as e:
__print(e)
print("### is None")
ck1(q)
ck1(None)
print("")
print("### ==None")
ck2(q)
ck2(None)
### is None
(id=1 OR id=2) AND (name="tarou" OR name="tanaka")
q is None
### ==None
Boolean value of this clause is not defined
q is None
361デフォルトの名無しさん
2021/10/31(日) 13:07:50.21ID:F/sAbtyW >>356
だよな。VBやってるやつはrubyの次に馬鹿だわ
だよな。VBやってるやつはrubyの次に馬鹿だわ
362デフォルトの名無しさん
2021/10/31(日) 13:21:43.76ID:e6cnICXj363デフォルトの名無しさん
2021/10/31(日) 14:21:08.43ID:a/o9PbUa PILのimageオブジェクトを複数扱うとき
その画像固有の色々なデータをどこかに保管しといて使い回すんだけど
sizeとかのプロパティと同じじゃんと思ってimageオブジェクトごとにインスタンス変数としてぶちこんでたんです
im1.x_rate = yyy
みたいな。
重いデータを押し付けるわけでないので現状別に困ってはいないけど、なにか問題ありますか? アクセス速度とか、データ保持周りの都合とかで
普通は辞書とかで管理しますよね
あとこういうインスタンスに、本来無いメンバーをねじ込むことができるのって、他の言語にはあまりない特徴なのですか?
その画像固有の色々なデータをどこかに保管しといて使い回すんだけど
sizeとかのプロパティと同じじゃんと思ってimageオブジェクトごとにインスタンス変数としてぶちこんでたんです
im1.x_rate = yyy
みたいな。
重いデータを押し付けるわけでないので現状別に困ってはいないけど、なにか問題ありますか? アクセス速度とか、データ保持周りの都合とかで
普通は辞書とかで管理しますよね
あとこういうインスタンスに、本来無いメンバーをねじ込むことができるのって、他の言語にはあまりない特徴なのですか?
364デフォルトの名無しさん
2021/10/31(日) 14:52:05.62ID:e6cnICXj365デフォルトの名無しさん
2021/10/31(日) 15:21:43.12ID:Q9Xu5pvX >>364
勉強になります
勉強になります
366デフォルトの名無しさん
2021/10/31(日) 17:14:53.49ID:Yc4PEJna 動的言語のいいところでもあり悪いところでもある。
当然こういうのを徹底的に嫌う人はいる。
当然こういうのを徹底的に嫌う人はいる。
367デフォルトの名無しさん
2021/10/31(日) 17:19:32.57ID:Q9Xu5pvX まあ入れたかどうか分かりづらい
自分で全部把握してないとしんどいですね
あとpylanceがすげえ怒ってる
自分で全部把握してないとしんどいですね
あとpylanceがすげえ怒ってる
368デフォルトの名無しさん
2021/10/31(日) 17:24:06.26ID:WrAvX4Kw 彼女によく言われます
> 入れたかどうか分かりづらい
> 入れたかどうか分かりづらい
369デフォルトの名無しさん
2021/10/31(日) 17:34:27.39ID:sRnAlDBM つづり間違いを許容する言語なら避けられない
370デフォルトの名無しさん
2021/10/31(日) 18:11:50.92ID:4KbMhR6u バグの温床
371デフォルトの名無しさん
2021/11/01(月) 11:52:01.98ID:f7xOE2SJ def _is(f):
_if f:
__return True
_else:
__raise Exception("error")
try:
__is(True)
_print("success")
except Exception as e:
_print(e)
何もしない、もしくはエラーを吐く
という_is()の行が、一行で完結していると
個人的に可視性が悪いように感じるのですが工夫や慣習とかあるのでしょうか?
例えば_isをTrueもしくはFalseを返すようにして
if not _is(True):
_raise Exception("error")
みたいにすれば「ここで条件分岐していますよ」というのがパット見で
どう分岐しているのかがわかります
しかし関数実行で一行で完結してるだけだと何してるかわからないし
関数名に「エラーかどうかチェックし、エラーがあるならエラーを吐く」的な名前を付けるにも
どういうのが適切なのかわかりません
_if f:
__return True
_else:
__raise Exception("error")
try:
__is(True)
_print("success")
except Exception as e:
_print(e)
何もしない、もしくはエラーを吐く
という_is()の行が、一行で完結していると
個人的に可視性が悪いように感じるのですが工夫や慣習とかあるのでしょうか?
例えば_isをTrueもしくはFalseを返すようにして
if not _is(True):
_raise Exception("error")
みたいにすれば「ここで条件分岐していますよ」というのがパット見で
どう分岐しているのかがわかります
しかし関数実行で一行で完結してるだけだと何してるかわからないし
関数名に「エラーかどうかチェックし、エラーがあるならエラーを吐く」的な名前を付けるにも
どういうのが適切なのかわかりません
372デフォルトの名無しさん
2021/11/01(月) 12:51:54.43ID:MaHd86e9 isはboolを返すようにする
if is_foo()
else
try:
check_foo()
except
あるいは
try_foo()
if try_foo()
else
が自然
if is_foo()
else
try:
check_foo()
except
あるいは
try_foo()
if try_foo()
else
が自然
373デフォルトの名無しさん
2021/11/01(月) 12:53:04.27ID:1SV0gAru374デフォルトの名無しさん
2021/11/01(月) 14:26:50.37ID:z/x9VzKb 文法以前に本人の頭が混乱してるな
病院池
病院池
375デフォルトの名無しさん
2021/11/01(月) 16:23:27.64ID:SSiHi0ki まずはPythonスレでインデントをアンダーバーで代替するのやめて全角空白「 」にしたらどうかな?
376デフォルトの名無しさん
2021/11/01(月) 16:25:48.35ID:4nNYTPSv >>375
それ
それ
377デフォルトの名無しさん
2021/11/01(月) 16:26:48.66ID:4nNYTPSv と思ったら全角スペースかい
なんでやねん
なんでやねん
378デフォルトの名無しさん
2021/11/01(月) 16:50:34.49ID:SSiHi0ki379デフォルトの名無しさん
2021/11/01(月) 17:10:45.07ID:+PGSxGGW class Cls(object):
def __new__(cls):
self = object.__new__(cls)
print('__new__ :', str(id(self)))
return self
def __init__(self):
print('__init__:', str(id(self)))
self.attr = 'Hello, world!'
obj = Cls()
def __new__(cls):
self = object.__new__(cls)
print('__new__ :', str(id(self)))
return self
def __init__(self):
print('__init__:', str(id(self)))
self.attr = 'Hello, world!'
obj = Cls()
380デフォルトの名無しさん
2021/11/01(月) 17:11:37.02ID:+PGSxGGW >>378
chmateだと大丈夫っぽい
chmateだと大丈夫っぽい
381デフォルトの名無しさん
2021/11/01(月) 17:17:16.17 テスト
連続全角スペース 2個
「 」
連続半角スペース 2個
「 」
連続アンダーバー 2個
「__」
連続全角スペース 2個
「 」
連続半角スペース 2個
「 」
連続アンダーバー 2個
「__」
382デフォルトの名無しさん
2021/11/01(月) 17:19:02.31 続いてテスト
先頭空白の、
連続全角スペース 2個
」
連続半角スペース 2個
」
連続アンダーバー 2個
__
先頭空白の、
連続全角スペース 2個
」
連続半角スペース 2個
」
連続アンダーバー 2個
__
383デフォルトの名無しさん
2021/11/01(月) 17:22:16.44ID:er84fHxI 2ch初心者かてw
384デフォルトの名無しさん
2021/11/01(月) 17:33:20.31ID:usQd0Ibl まあ
全角スペース積んで
それらしいインデント表現できるなら
とはいえ全角スペースって…
あと>>379はパソコンで表示できねーのでやめとけ
全角スペース積んで
それらしいインデント表現できるなら
とはいえ全角スペースって…
あと>>379はパソコンで表示できねーのでやめとけ
385デフォルトの名無しさん
2021/11/01(月) 17:46:32.90ID:bBJfHO04 コーディングでアンダーバーってあんま聞かない
386デフォルトの名無しさん
2021/11/01(月) 17:48:52.19 ちなみに過去スレみても全角スペースインデント派が極端に少ないように思えるけどなぜ
387デフォルトの名無しさん
2021/11/01(月) 17:50:38.30ID:SSiHi0ki Pythonはインデントそのものに文法的な意味があるから、他言語スレのような雑なコピペ、やりにくい
388デフォルトの名無しさん
2021/11/01(月) 17:51:32.34 専ブラによってはAA補正機能ONだと全角スペースはズレるから、とかかな
389デフォルトの名無しさん
2021/11/01(月) 17:51:53.67ID:rjS1S2Zt >>1も読めないのか
390デフォルトの名無しさん
2021/11/01(月) 17:54:59.57ID:QIRv2mIK 意味があるからこそアンダーバーで表現してるんでしょ
5ch内では_が確実
コピペするなら^_*くらい置換しろよ
5ch内では_が確実
コピペするなら^_*くらい置換しろよ
391デフォルトの名無しさん
2021/11/01(月) 17:57:14.59ID:SSiHi0ki >>390
__init__ とか __main__ みたいにアンダーバーで始まる予約キーワードがあるから厳しいかも
__init__ とか __main__ みたいにアンダーバーで始まる予約キーワードがあるから厳しいかも
392デフォルトの名無しさん
2021/11/01(月) 18:06:02.27 >>1
if エラーを解決したい場合:
print('表示されたエラーの全文')
print('実行環境')
else:
if インデントが崩れてチヌ:
コードうp用サイトに貼ってこいください()
else:
ご自由に()
#エラー解決が目的でなく、ただの質問なら自由でおk
if エラーを解決したい場合:
print('表示されたエラーの全文')
print('実行環境')
else:
if インデントが崩れてチヌ:
コードうp用サイトに貼ってこいください()
else:
ご自由に()
#エラー解決が目的でなく、ただの質問なら自由でおk
393デフォルトの名無しさん
2021/11/01(月) 18:21:31.02ID:lFi5lRVR アンダバダバ
394デフォルトの名無しさん
2021/11/01(月) 18:32:01.31ID:SSiHi0ki お前の力はそんなものか
395デフォルトの名無しさん
2021/11/01(月) 18:37:52.01ID:4nNYTPSv さっさと掲示板の設定変えろよタコ管理人
396デフォルトの名無しさん
2021/11/01(月) 18:38:19.50ID:4nNYTPSv アンダーバーの代わりに全部🐙にするか
397デフォルトの名無しさん
2021/11/01(月) 20:11:25.62ID:nDDBE8sn 馬鹿に優しすぎるスレも考え物
398デフォルトの名無しさん
2021/11/01(月) 20:47:47.51ID:b8DEaY2C くだらない質問スレの略なんだから
くだらない人間も許容範囲だろう
くだらない人間も許容範囲だろう
399デフォルトの名無しさん
2021/11/01(月) 20:56:53.14ID:+3mYHrQj 全角スペースでいい
行頭からの全角スペース連続なら簡単に置換できる
行頭からの全角スペース連続なら簡単に置換できる
400デフォルトの名無しさん
2021/11/01(月) 21:03:19.83ID:+3mYHrQj   でテスト
space(0)
space(1)
space(2)
space(3)
space(4)
space(0)
space(1)
space(2)
space(3)
space(4)
401デフォルトの名無しさん
2021/11/01(月) 21:05:46.67ID:+3mYHrQj これ使えるじゃん
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- パワフル女性世界3位に高市首相 米誌フォーブス選出 [蚤の市★]
- 【S.RIDE】「忘年会の幹事ずるい」 ソニー系配車アプリの広告が物議…… 運営が謝罪「配慮に欠ける不適切な表現」掲出終了に [ぐれ★]
- 【米FRB】0.25%利下げ決定 3会合連続、雇用下支え [蚤の市★]
- テレ朝本社から社外スタッフの男性が転落し死亡 テレビ朝日がコメント [ひかり★]
- 【野球】日本ハム・水谷瞬、WBCイギリス代表入りか!? 父がナイジェリア出身 監督「手続き進めている」…単独取材に応じる [冬月記者★]
- アイヌ民族の「戸籍簿」がヤフオクで落札 団体「人権無視」と憤り [蚤の市★]
- 高市「野党はもう債権とか為替の話はしないで!よく分からないから答えない!」 [884040186]
- 「駐車場で子猫を保護しました!」
- うんちでそぅ🥺
- いまインド人の間で「人気の移住先」は日本🇯🇵 彼らが「定住」を望む理由😳 [762037879]
- Twitter医師ら「死ぬほど勉強して博愛精神求められるとかそらみんな美容外科なるわ。嫌なら普通の医療も保険診療廃止しろ!」 [762037879]
- 【悲報】教育ママ「ギャオオオオオン!息子が大麻吸ってるのお!!」⇨中3の息子を警察に突き出し全てを終わらせる [455031798]
