Pythonのお勉強 Part67
レス数が950を超えています。1000を超えると書き込みができなくなります。
!extend:default:vvvvv:1000:1024
!extend:default:vvvvv:1000:1024
↑スレ立てる毎に減るので、減ってたら3つに補充すること。
・当スレにRubyのソースコード類を書くことを禁ず
・Ruby等、Pythonではないプログラミング言語での回答類・質問を書くのも禁止
・「Ruby では」「Rubyでは」「Rails」正規表現→「^クソチョンw$」をNGワード登録推奨
・エラーを解決したいときは、かならず
エラー文(勝手に省略orスクショうp等の横着禁止)と
おま環(Pythonのバージョン番号+OS名とバージョン+IDE名)を書け。
★Pythonのソースコードを5ちゃんに直貼はインデントが崩壊するので、
↓等のコードうp用サイトに貼ってきてくだしあ。(スクリーンショットをうpる「横着」禁止)
ttps://techiedelight.com/compiler/ Run Code機能あり。
ttp://ideone.com/ デフォ設定がCなので、Pythonするには言語種選択ボタン押下がピコ手間かも。
ttp://pastebin.com/ まずまずシンプル。
ttp://dpaste.com/ とてもシンプル。消えるまでの日数は十分長ーく指定のこと。
◇Pythonオフィシャルサイト http://www.python.org/
◇Pythonドキュメント https://docs.python.org/ja/3/
◇まとめwiki ttp://python.rdy.jp/
●関連スレ● 自称初心者は↓へ
【まず1嫁】くだすれPython(超初心者用) その57
http://mevius.5ch.net/test/read.cgi/tech/1653225908/
〇前スレ〇 Pythonのお勉強 Part66
http://mevius.5ch.net/test/read.cgi/tech/1636970383/
次スレの建立は>>985が挑戦する。(980通過して24h後も落ちなくなった)
### END of TEMPLATE ###
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured たびたび失礼します
set型に対してsampleメソッドを使ったら警告が出てしまいました
以下の文です
shuffle_list = random.sample(card, len(card)) # cardはset型
今やsampleメソッドは使わない方が良いでしょうか? >>850
色々なものを受け取る可能性があるなら(通常pillowはそうだが)
from PIL import Image
im :Image.Image
が定石 >>851
せめて警告内容ぐらい書け
答える側になったつもりで文章読み返してから書き込め >>851
警告文に「非推奨です」って書いてあるやろ
英語ぐらい読め >>855
それが出来たらこの程度の質問なんか絶対しないと思うわ ご迷惑をおかけしています…
>>853
リファレンスによると上の書き方は3.9以降では非推奨のようなのですが、
他に良い書き方が思い当たらなくて困っています
>>855
はい
DeprecationWarning: Sampling from a set deprecated
since Python 3.9 and will be removed in a subsequent version.
です
また、リファレンスのsampleメソッドの項目内で、
バージョン 3.9 で非推奨: In the future, the population must be a sequence.
Instances of set are no longer supported.
The set must first be converted to a list or tuple,
preferably in a deterministic order so that the sample is reproducible.
と書いてありました
それぞれ訳してみましたが、どういうことなのかイマイチ分かりませんでした >>858
特に困らないなら
警告通りにsetをlistかtupleに変換してからrandom.sampleを使えばOK >>858
じゃあまず日本語と英語の勉強しよう
プログラムなんかやってる場合じゃない
sampleの母集団(対象)はシーケンスであるべきで、setのインスタンスはお断りです
setは予めリストやタプルに変換してからサンプリングしてください
シーケンスとインスタンスの意味はググれ >>858
countsが追加されたのでシーケンスしか受け付けなくなったと
setはインデクシング不可の順序なしコレクションゆえに
listかtupleへ変換して渡せって事でしょう ふと思ったけどなんで整数型ってシーケンスじゃないの? 答えてくれた方、ありがとうございます
指示通りにやってみようと思います 英語は、DeepL で日本語に訳して読んでから、質問しろ >>379
pythonでwhileの実行の遅さを指摘する人がいた 関数がN個あって、呼び出し関数に引数kを与えたら
順繰りに関数を呼び出すことをしたんだけど可能?
kansuK→kansuK+1→・・→kansuN→ kansu1→・・→kansuK-1
def kansu1:
def kansu2:
def kansuN:
def yobidashi(k)
ret=kansuK
ret=kansuK+1
N個繰り返す kansues = [kansu1, kansu2, ... kansuN]
def yobidashi(k):
__for i in range(N):
____ret = kansues[i-N+k]()
動かしてないから正しいかはわからん >>867
getattr()とかのメタプログラミング機能を使えば簡単にできるけど
設計を見直したほうがいい可能性のほうが高い >>867
素人はそんなこと考えるんだな
とりあえずやめとけ >>850
君は継承のメリットの一つに気付いたようだ
おめでとう >>867
ret = kansuN(kansuN-1(kansuN-2(...kansu2(kansu1(k))...)))
じゃないのか Pythonのif文で複数行を1行に書くことって出来ますか?
他の言語でいう
if 条件式: 処理1; 処理2;
みたいに書きたいのですが (2^((2^(115-1))-1))*(2-(2^-4294967180))
が、誤差が出たり桁あふれしたりで計算できないんです。
誤差
https://ideone.com/MDO46W
VscodeのpythonではOverflowError: Python int too large to convert to C ssize_tが出る。
Vscodeでもideoneでも、(2^((2^(35-1))-1))*(2-(2^-4060))くらいなら計算できます。
どうしたら計算できるでしょうか?
とりあえず先頭100桁だけです。 >>876
整数計算なのにdecimal使う必要あるの? Vscodeのpythonで
t = ((2**((2**(115-1))-1))*(2-(2**-4294967180)))
を実行したらメモリエラーが出た。
ideoneでも
Time limit exceeded #stdin #stdout 5s 1326060KB
と出る。 decimalだとますますメモリ使うし時間もかかるだろうから、そのエラーはdecimalじゃ解決できないと思うよ >>881
へー知らんかった
代入してbreakとか短いやつなら可読性落ちないだろうし使ってみよっと セミコロンはpythonの中で何だと思われてるんだ 読みやすい10行より読みにくい1行の方が可読性が高いという人もいる ステートメント終了のお知らせとして多くの言語で使われてるッテ意味な
んちんちんちんちん これは個人の好みだけど
if cond: break
def f(x): return x*2
こういう改行を省略して一行にしたものは嫌い Python入門: 基礎から始める集中講座
6:29:47
422 回視聴・2022/08/31
freeCodeCamp Japanese シェルスクリプトとして書くときにセミコロン使うと一行で続けて書けるから便利 まぁ自分で使う分には好きに書けば良いけど
それを自分以外に使わせる可能性が少しでも有るなら規則に則った方が良いわな flaskからhtml上のアクションでpython処理
こっからAjaxでhtmlの更新かけたいんだけどよぐわがんにゃい 今PythonとDjangoをヒィヒィ言いながら勉強してるんですけど
PythonとDjangoの難しさとPHPとLaravelの難しさを10段階で表したらどのくらいですか? > ajax
参考になりそうな奴を提示してあげたいけど
jqueryがどうとかいう、いま令和だよ?って感じのサイトしか出てこないから止めた 助かります!!
flaskに対してイベント起こせばいいんだろうけど、調べてもまったくピンとこないんすよね… >>897
YouTube で有名な雑食系エンジニア・KENTA は、下の動画で、
未経験者はシェアが高い、Ruby on Rails でポートフォリオを作れと言ってる
Django, Laravel はダメ。
特にKENTAは、PHP, Scala をオワコン認定したので、使わない方がよい
未経験からのエンジニア転職の必須教養【技術知識編】
www.youtube.com/watch?v=Q1c09rrhTjo
Railsは、KENTAのサロン以外にも、RUNTEQ、東京フリーランスのデイトラなど色々ある みんながやってることをやっても食いっぱぐれる
ニッチを狙え Ruby on Railsは将来性のないプログラミング言語の記事でよく挙がってたけどな 上位だったものではRubyとGoが墜落2大候補。
そ あんま関係ない話題だけど最近windowsのpowertoysに入ったText Extractorって機能がめっちゃ便利だな
動画で解説するタイプのプログラミング講座ってコピペしにくいのが難点だけど
これさえあればスクショ撮るような感じで画像からコピペできる RoRか
個人的には悪くないと思うんだけど
採用率は依然として低いな
開発時にちょっとした罠が
あちこちにある
まあ他の言語でもそうだが Ruby on Railsの良さが分からん。
誰かわかる?
pythonとruby比べてrubyのメリットある? Railsは伝統的なSSRアプリの標準的な開発ワークフローに対して徹底的に最適化されているから、一昔前までは確かに生産性が高かった
一方でSPAでは無用の長物となってしまい、もはや価値はない >>907
Djangoと両方経験すれば嫌でもわかるぞ Windowsマシンでselenium/Chromeを動かしてファイルをダウンロードすることをしてるんだが。
chromeのダウンロードフォルダーの設定のパス名に"/"と"\"を混在するさせると動かなくなった。
#chromeのダウンロードフォルダーの設定
chrome_download_folder=os.path.join(os.path.dirname(__file__), "dat")
#バックスラッシュに変換しないと動かなくなった
chrome_download_folder = chrome_download_folder.replace('/','\\')
"/"と"\"を置換するのてもっとos.path系の命令でふさわしいのがあるの?
とりあえず上のやつ動いてるけど。 【半年間使ってわかった】PythonのwebフレームワークDjangoを学ぶメリット・デメリット
www.youtube.com/watch?v=783JIyyyxMk
かよちんの動画でも見れば?
彼女は学生時代に未経験で、Ruby on Rails でポートフォリオを作って就職した。
そこで1年運用をやって、開発したいから転職した。
転職先で、Django をやってる
未経験者には、日本語情報が多いRailsが簡単。
Railsチュートリアル・Railsガイドとか、黒田努の3冊の本など、勉強環境が揃っている
Djangoから始めると難しくて、かなりの時間の無駄だし、
そもそも、文系には不要
ほとんどの会社の普通のウェブ開発で、Railsではなく、Djangoを選ぶ理由がない。
KENTA も言ってるけど、面接でDjangoを選んだ理由を説明できないから無理
余程、AWS の機械学習の資格を持っているとか、
大学院数学科卒とか、バリバリ理系の証明書がある人だけ。
文系じゃ無理 >>897
Laravelは依存性注入のようなことをかなりやっていて、ソースコードを追いづらくて難しいと思った。Ruby on Railsと一緒で、決められたことやるにはいいが
逸脱しようと思ってフレームワーク調べようとすると辛い感じがした。
Djangoの方が素直だと思う。 YouTube で有名な雑食系エンジニア・KENTA の動画
未経験からのエンジニア転職の必須教養【技術知識編】
www.youtube.com/watch?v=Q1c09rrhTjo
奇をてらって、Laravel, Django を選ぶな。
転職先が多い、Ruby on Rails が有利
キャリアパスも、Rails → Go だけ 何を選んだってそれで10年は食えない
手に職つける的な考えならこの業界は避けるのが吉 >>915
ありがとうございます。Djangoの道を迷わず進みます。 >>918
コンピューターサイエンスしてなきゃそりゃそーよ >>918
それをやるには全てマスターすれば良い
あとデザインとマーケティングも追加で
今はフルスタック+デザイナーとかが出来る奴も生まれてる MVCモデルとMTVモデルか
なんかviewの示しているものが違うんだよなあ Djangoでウェブアプリ公開してみました。
そのあとfaviconを設定したくて
.icoファイルをWEBサーバー側に保存したいのですが、
どうしたら良いのか教えてください
デプロイ後に画像などの静的ファイルを追加したい場合
どうするのが良いのか教えて欲しいです
(いくつか方法があるのでしょうか?) >>925
staticファイルを置くディレクトリを決めてそこに置きなさい a = (1, -1)[5 % 2 == 0] * 10
てどういう計算をやってるんですか?
a=10となりますが。 >>927
(5÷2=余り1)≠0⇒False≒0って事でタプルの0番目を取得して掛ける10 だとしたら、なんでハナから丁で書かないんだ。
甲 a = (1, -1)[5 % 2 == 0] * 10
乙 a = (1, -1)[false] * 10
丙 a = 1 * 10
丁 a = 10 要は濃度2の配列から0番目か1番目の要素を取ってきてそれに10かけるわけですな。
夜遅くにTHXです。
てっきり(1,-1)て座標なのかと思った。
グラフック系のプログラムで書いてあったので。 >>926
ありがとうございます。
static¥Img¥favicon.ico
とした時に
favison.icoを入れる方法ってどうするんですか?
ssh ***@ipアドレス
から上記のimgディレクトリまで移動したあと
ローカル環境からfavicon.icoファイルを
入れるのってどういうコマンドなんでしょうか? >>925
python manage.py collectstatic >>911Djangoの方が使いやすいことも判った
SPAでもルーティング描けば使えるし >>929
もう、アルファベットも算用数字も使っとるやないかというツッコミ >>932
それはimgフォルダにfavicon.icoが置かれた後
のコマンドですよね。
その前のfavicon.icoをimgフォルダに
入れる方法が知りたいのです。。 VSCode の拡張機能・Remote - SSH(Remote Development) とか、FileZilla
他には、PuTTY もある。寺尾のTeraTerm は古い。
RLogin と言うのもあるようだ >>935
ファイルも含んだgitレポジトリ作って
サーバー側でクローン作りゃええ pilのimage.saveってフォーマットによって引数が変わるのです
match im.format:
__case 'JPEG':
____im.save(path, quality=85, subsampling=0)
__case 'PNG':
____im.save(path, optimize=Trur)
__case 'WEBP':
____im.save(path, quality=80, lossless=True)
...
いまはこういうふうにゴリゴリ書いてるんですが
フォーマットが増えると読み書きしんどいです
なんかうまい書き方ないですか
im.save(path, *save_options(im.format))
みたいな。わからんけども 確かにハードコーディングしない方が良さそう
定数としてim.formatで参照できる辞書を用意してそれをベタ書き代入するしかないんじゃない save_optionsメソッドの中身がそのmatch-caseなら見通し悪くはないけどな
im内包したクラスでよゆうで感心分離できる >>942
フォーマット毎にオプションの指定の仕方が1種類ならいいんだけどそうとは限らないからね
ハードコーディングのほうが読みやすいかもしれん >>936
vscodeでTeraTerm(ssh接続)が使えたらいいなと思ってRemote - SSH入れたんだけどコレジャナイ感がある。
ウインドウ2つに増えないで欲しい。
理想は
ファイルはローカルファイル表示で
ローカル用のターミナルとsshターミナルにしたいんだけど無理かな? >>941
いくつかのキーワード引数に関数の返り値を渡す ってできるのけ? >>946
この場合なら関数の戻り値が辞書なら出来る
https://note.nkmk.me/python-argument-expand/
ゴリゴリ書くのも視認性が悪くなくていいけど、
条件がフォーマット以外にもあるなら、
ゴリゴリ部分を関数に分離して辞書で返すのもいいかもね
純粋に辞書用意してキーで引くだけだと、可読性が悪そう
それがベストなケースもあるとは思うけどね opt = {
'JPEG': {'quality': 85, 'subsampling': 0},
'PNG': {'optimize': Trur},
'WEBP': {'quality': 80, 'lossless': True}}
im.save(path, **opt[im.format]) 設定を、YAML・JSON ファイルにまとめて、それを読み込んだ方が良さそう
Ruby なら、それらをRubyオブジェクトに変換できる >>939
Git操作に自信がなかったので
今回は見合わせました。
最初に浮かんだのがこの方法だったので
Git勉強してから試したいと思います。
>>940
scpコマンドは知らなかったです。
試してみたら、無事リモート側へコピーすることが出来ました。
python3 manage.py collectstatic
で反映させることも出来ました。
お世話になりました! レス数が950を超えています。1000を超えると書き込みができなくなります。