当スレに★Python以外のプログラミング言語での回答類を書くべからず★
派生言語はそれぞれ専スレがあるのでそっち池。
「Ruby」「某言語では」をNGワード登録推奨。荒らしは、完全スルー放置が一番きらいです。
このスレッドは「お勉強」スレのほうには書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を、勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますので、お礼は Python の布教と初心者の救済をお願いします。
★エラーを解決したい場合は、
表示されてるエラー全文(勝手に省略やスクショうp等の横着クソ行為禁止)と、
実行環境(Pythonのバージョン・OSとIDEの種類とバージョン)をシッカリ書くこと。
【【【複数の連続半角スペースはなかったことになる・タブがうまく入らない5chの仕様】】】に注意!
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
〇前スレ〇 くだすれPython(超初心者用) その50【まず1嫁】
http://mevius.5ch.net/test/read.cgi/tech/1598527450/
次スレは >>985 あたりが挑戦してくだしあ。(980過ぎて自動落ちは、無くなって久しい)
### END OF TEMPLATE ###
くだすれPython(超初心者用) その51【まず1嫁】
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2020/10/17(土) 10:05:38.14ID:1RQ0Wdhu2020/10/17(土) 11:27:15.93ID:1thDdeTA
3デフォルトの名無しさん
2020/10/17(土) 14:00:51.41ID:dPJ220D1 いちおつ有能
2020/10/17(土) 14:05:43.33ID:6+t3jHck
おっぱいそん
5デフォルトの名無しさん
2020/10/17(土) 14:13:02.49ID:Y2egJtFL 可読性を犠牲にして実行速度を得られるPythonのコードってどういう例がありますか?
2020/10/17(土) 15:29:19.46ID:tgqu+4qK
くだれす〜
7デフォルトの名無しさん
2020/10/17(土) 16:37:45.50ID:SpKdHUv/ > お前は毎朝起きるたびに俺に負けたことを思い出すよ^^
あー、ホンッとに思い出すなあ(笑)
キチガイの嘘つきの低レベルFランの、
朝鮮ゴキブリBot君は、
チョン独特の「なにもできないけど俺のほうがジャップより偉い!」的な
ことはよーくわかったよ。
ホントなにもできない朝鮮ゴキブリBot君!
クソチョンw
Pythonさえろくにできないバカチョンのくせに
できるとほざくクソチョンw
日本で強姦と窃盗を繰り返す
犯罪者在日のクソチョンw
あー、ホンッとに思い出すなあ(笑)
キチガイの嘘つきの低レベルFランの、
朝鮮ゴキブリBot君は、
チョン独特の「なにもできないけど俺のほうがジャップより偉い!」的な
ことはよーくわかったよ。
ホントなにもできない朝鮮ゴキブリBot君!
クソチョンw
Pythonさえろくにできないバカチョンのくせに
できるとほざくクソチョンw
日本で強姦と窃盗を繰り返す
犯罪者在日のクソチョンw
2020/10/17(土) 21:23:45.76ID:ia6CZUvY
でたw
2020/10/17(土) 22:57:23.60ID:aI2oeiUv
何があったか知らんけど、7みたいな中学生をコテンパンに言い負かしたやつが悪い
2020/10/18(日) 00:29:45.75ID:BP1EUUz6
list_a = ['a', 'b', 'c']
list_list = [] (リストのリスト)
list_aの末尾に要素を追加してから、そのリストを丸ごとlist_listへ追加したい。(list_aの中身はどうなってもいい)
(1)
list_list.append(list_a.append('d'))
→戻り値で評価されて、Noneがappendされてしまう
(2)
list_a.append('d')
list_list.append(list_a)
→ならlist_listは想定の結果となる
(list_aは更新される)
(3)
list_list.append(list_a + ['d'])
→も想定の結果となる(カッコ内がリストの戻り値だから)
(list_aは更新されない)
(1)のような書き方みたいに、そのオブジェクトが更新されるメソッドを実行した後のオブジェクトとしてappendの引数に入れるような書き方というのはできないですか?
list_list = [] (リストのリスト)
list_aの末尾に要素を追加してから、そのリストを丸ごとlist_listへ追加したい。(list_aの中身はどうなってもいい)
(1)
list_list.append(list_a.append('d'))
→戻り値で評価されて、Noneがappendされてしまう
(2)
list_a.append('d')
list_list.append(list_a)
→ならlist_listは想定の結果となる
(list_aは更新される)
(3)
list_list.append(list_a + ['d'])
→も想定の結果となる(カッコ内がリストの戻り値だから)
(list_aは更新されない)
(1)のような書き方みたいに、そのオブジェクトが更新されるメソッドを実行した後のオブジェクトとしてappendの引数に入れるような書き方というのはできないですか?
2020/10/18(日) 00:50:55.67ID:/Z/JZuKT
つlist_list.append(list_a+['d'])
12デフォルトの名無しさん
2020/10/18(日) 01:09:16.00ID:XIKHaV9E listを継承して、append後にselfを返すメソッドでも実装しなはれ
13デフォルトの名無しさん
2020/10/18(日) 01:13:49.31ID:XIKHaV9E class MyList(list):
__def append(self,a):
____super().append(a)
____return self
list_a=MyList([‘a’,’b’,’c’])
list_list=[]
list_list.append(list_a.append(d))
__def append(self,a):
____super().append(a)
____return self
list_a=MyList([‘a’,’b’,’c’])
list_list=[]
list_list.append(list_a.append(d))
14デフォルトの名無しさん
2020/10/18(日) 09:52:27.61ID:h0an4siz >>10
list_list = [*list_a, 'd']
list_list = [*list_a, 'd']
2020/10/18(日) 10:28:15.04ID:+vZczgoX
16デフォルトの名無しさん
2020/10/18(日) 11:01:34.94ID:vmWunLYe >>10
そう言うのは関数型言語的な発想。
もしくは同じオブジェクト指向でもメッセージパッシング主体のSmalltalkやRubyの発想。
Pythonのオブジェクト指向はC++的。
美しきHaskell畑へようこそ。
そう言うのは関数型言語的な発想。
もしくは同じオブジェクト指向でもメッセージパッシング主体のSmalltalkやRubyの発想。
Pythonのオブジェクト指向はC++的。
美しきHaskell畑へようこそ。
2020/10/18(日) 11:13:21.30ID:XoxqzEVb
c++でも自身を返す関数は多いけどな。
streamとか
streamとか
18デフォルトの名無しさん
2020/10/18(日) 11:30:11.96ID:H1xH1BRx 他の言語知ってても
python 初心者の頃は仕方ない
sort() sorted() でも混乱するし
len() はナニコレって思う
python 初心者の頃は仕方ない
sort() sorted() でも混乱するし
len() はナニコレって思う
19デフォルトの名無しさん
2020/10/18(日) 13:40:43.68ID:LTF40fUE むかし無印C そしてアセンブラをちょっとやってPythonに来たんだけど
len()便利!って思ったおもひで
len()便利!って思ったおもひで
2020/10/18(日) 19:26:16.89ID:sP6Ssfc9
Windows版 Anacondaでenv配下のpython exeを直叩きするとライブラリのエラーを吐く(baseが起動されてる?)んですがこれって仕様ですか?
Ubuntuで使ってたときはpython直叩きで普通に動いてたのですが…
Ubuntuで使ってたときはpython直叩きで普通に動いてたのですが…
2020/10/18(日) 20:12:49.18ID:LTF40fUE
>>20
パスが通ってないんでねーの
パスが通ってないんでねーの
2020/10/19(月) 01:51:34.80ID:/dP3R2fY
2020/10/19(月) 02:50:44.31ID:OVCmHBqA
[{"a":1},{"a":2}]
みたいなネストされた複数辞書をjson.loadで読み込むことに成功はしたのですが
なぜか相対パスだと成功して絶対パスだと
dictionary update sequence element #0 has length 1; 2 is required
なエラーがでて失敗します
なんでですか
みたいなネストされた複数辞書をjson.loadで読み込むことに成功はしたのですが
なぜか相対パスだと成功して絶対パスだと
dictionary update sequence element #0 has length 1; 2 is required
なエラーがでて失敗します
なんでですか
2020/10/19(月) 03:26:59.96ID:DsKIoN0Z
意味がわからないのでコード全体を書いてください
2020/10/19(月) 07:24:07.28ID:zWJLigJ7
2020/10/19(月) 09:36:29.53ID:4EZdKnY4
違うファイルを読んでるに一票
2020/10/19(月) 12:02:28.38ID:asy7wTux
ユーザー名全角文字半角スペースとか入れるやつはあほ
2020/10/19(月) 12:31:39.94ID:qGPDmfjh
楽天三木谷もkoboアカウントの件でそんなことを言っていたな
2020/10/19(月) 13:15:13.55ID:7uyYHFbc
実はPHPだったに一票
1も読まない質問者だからありえる
1も読まない質問者だからありえる
2020/10/19(月) 13:22:16.43ID:xZeEkj1k
今どき全角だから受け付けないとか許されんわ。
うっかり世界中に絵文字を流行らせてしまった責任取れ
うっかり世界中に絵文字を流行らせてしまった責任取れ
31デフォルトの名無しさん
2020/10/19(月) 13:27:52.28ID:asy7wTux ソースのエンコード
テキストデータのエンコード
ファイルシステムのエンコード
把握しとけよ
テキストデータのエンコード
ファイルシステムのエンコード
把握しとけよ
2020/10/19(月) 21:01:35.50ID:2Is2q0wK
2020/10/20(火) 13:43:26.44ID:ysKzRYjJ
簡単な検索サイトみたいなの作りたく5月に初プログラミングでPythonはじめて、1ヶ月くらいで原型はできてきたけど
そこからMysqlの速度改善、いろんなケースの対応とか修正改良に何ヶ月もかかってしまった…
まだHTMLとCSSもほとんどできてないし、ウェブサイト作成の道のりがこんなに長いとは思わなかった
最初に完成形を思い描いておいて正解だった。目標が見えてなかったらとっくに挫折してる
そこからMysqlの速度改善、いろんなケースの対応とか修正改良に何ヶ月もかかってしまった…
まだHTMLとCSSもほとんどできてないし、ウェブサイト作成の道のりがこんなに長いとは思わなかった
最初に完成形を思い描いておいて正解だった。目標が見えてなかったらとっくに挫折してる
34デフォルトの名無しさん
2020/10/20(火) 15:21:01.77ID:Zx1gytYL おきばりやす
2020/10/20(火) 16:29:48.06ID:eycpLBp6
class A:
_def __init__(self):
__self.data = [1,2,3]
a = A()
for d in a.data:
_print(d)
forで回すときだけ、for d in a:と書くだけで
実際はa.data返してくれる特殊メソッド的なやつはないのでしょうか
_def __init__(self):
__self.data = [1,2,3]
a = A()
for d in a.data:
_print(d)
forで回すときだけ、for d in a:と書くだけで
実際はa.data返してくれる特殊メソッド的なやつはないのでしょうか
2020/10/20(火) 17:17:00.75ID:EATBGB0m
37デフォルトの名無しさん
2020/10/20(火) 17:29:05.66ID:nDz4VJ3V __iter__()
38デフォルトの名無しさん
2020/10/20(火) 17:31:25.43ID:vcQhkuUZ >>35
[Python] イテレータを実装する - Qiita
https://qiita.com/tchnkmr/items/e740173d7400f8672d75
Python3 – __iter()__によるイテレーターの実装 – TauStation
http://taustation.com/python3-iterator-implementation/
Pythonの特殊メソッド一覧を備忘録としてまとめてみた。 - Qiita
https://qiita.com/y518gaku/items/07961c61f5efef13cccc
C++やJavaに慣れていればどうということは無いかんたんな仕組み
[Python] イテレータを実装する - Qiita
https://qiita.com/tchnkmr/items/e740173d7400f8672d75
Python3 – __iter()__によるイテレーターの実装 – TauStation
http://taustation.com/python3-iterator-implementation/
Pythonの特殊メソッド一覧を備忘録としてまとめてみた。 - Qiita
https://qiita.com/y518gaku/items/07961c61f5efef13cccc
C++やJavaに慣れていればどうということは無いかんたんな仕組み
2020/10/20(火) 17:41:22.29ID:iUu5GsdY
>>36
ちょw
ちょw
40デフォルトの名無しさん
2020/10/20(火) 19:50:39.99ID:HzDHbN9N >>35
__iter__でa.dataを戻り値
__iter__でa.dataを戻り値
2020/10/20(火) 19:57:20.87
import itertools
import time
class A:
_def __init__(self):
__self.data = [4,6,5]
_def __iter__(self):
__return itertools.cycle(self.data)
_def __next__(self):
__return next()
a = A()
for d in a:
_print(d)
_time.sleep(1)
>>37,38
self.dataを汚すかどうかは置いといて
できました ありがとうございました
>>36
ないのでしょうか?
一応それっぽいというか、まさにってものができたのですが
やらないほうがいい理由を後学のため教えてください
import time
class A:
_def __init__(self):
__self.data = [4,6,5]
_def __iter__(self):
__return itertools.cycle(self.data)
_def __next__(self):
__return next()
a = A()
for d in a:
_print(d)
_time.sleep(1)
>>37,38
self.dataを汚すかどうかは置いといて
できました ありがとうございました
>>36
ないのでしょうか?
一応それっぽいというか、まさにってものができたのですが
やらないほうがいい理由を後学のため教えてください
2020/10/20(火) 20:04:58.79ID:EATBGB0m
2020/10/20(火) 20:09:19.14
だめだ会話が成り立たない
クラスにするかどうかってここで関係あるのかなぁ…
>ないからって
というのはどういう意図で言ったのか聞きたかっただけなのに
クラスにするかどうかってここで関係あるのかなぁ…
>ないからって
というのはどういう意図で言ったのか聞きたかっただけなのに
2020/10/20(火) 22:38:32.31ID:vwGc/p8H
自分は逆に、こういうのでもクラスを使うほうがいいのかと思ってしまった
いまだに自作のクラスを使わないといけない状況にあったことがないので
だから全然クラスの知識が増えない
いまだに自作のクラスを使わないといけない状況にあったことがないので
だから全然クラスの知識が増えない
2020/10/20(火) 22:50:02.10ID:19yz3Hql
pandasでカラム1〜カラム10まであるとして、
axis=1の方向でソートして3番目の値を新たにカラム11とする場合の書き方を教えてください。
カラム1〜10はすべて数値です。
axis=1の方向でソートして3番目の値を新たにカラム11とする場合の書き方を教えてください。
カラム1〜10はすべて数値です。
2020/10/21(水) 11:34:12.69ID:zDJAgP8g
勉強始めてまだ3日目。まだアンダーバーの意味すらわからん。
カメに捕まってしまいましたし。
カメに捕まってしまいましたし。
47デフォルトの名無しさん
2020/10/21(水) 12:31:30.33ID:xBgAWF1Y import random
import pandas as pd
df = pd.DataFrame([[random.randint(1,10) for _ in range(10)] for _ in range(5)])
df['No3'] = df.apply(lambda x: sorted(x)[2], axis=1)
print(df)
import pandas as pd
df = pd.DataFrame([[random.randint(1,10) for _ in range(10)] for _ in range(5)])
df['No3'] = df.apply(lambda x: sorted(x)[2], axis=1)
print(df)
2020/10/21(水) 13:56:16.17ID:c5E90NOp
2020/10/21(水) 20:40:28.03ID:xIbMleXq
>>47
ありがとうございます!
ありがとうございます!
2020/10/21(水) 21:38:51.76ID:AdaVgrBD
確かにID隠しはカスが多いイメージなので自分も無視しよう
2020/10/21(水) 23:59:34.46ID:eEy42ac7
先週からPythonを始めた初心者です
手書きの数字を書いた画像ファイルからその数字を予測させるプログラ厶を作っているのですが、作ったプログラムファイルと画像ファイルを同一フォルダ内に入れるにはどうすればいいでしょうか?
画像ファイルはペイント3Dで作成したものです
コード以前の質問で申し訳ありません
手書きの数字を書いた画像ファイルからその数字を予測させるプログラ厶を作っているのですが、作ったプログラムファイルと画像ファイルを同一フォルダ内に入れるにはどうすればいいでしょうか?
画像ファイルはペイント3Dで作成したものです
コード以前の質問で申し訳ありません
2020/10/22(木) 02:29:50.64ID:9XviiwvN
53デフォルトの名無しさん
2020/10/22(木) 10:41:34.94ID:vPWH9GQz 退屈な事はpythonにやらせよう
2020/10/22(木) 12:34:01.43ID:HXHhKphi
ゴミ出しと風呂掃除頼む。
55デフォルトの名無しさん
2020/10/22(木) 14:48:20.36ID:iRctxXkJ 料理洗濯も
2020/10/22(木) 14:50:57.06ID:RUAley9J
自発呼吸頼むわ
2020/10/22(木) 15:39:07.78ID:/vtiKtyR
代わりにトイレに行ってくれると助かる
2020/10/22(木) 19:58:02.49ID:3xJ2F0Gf
>>52
回答ありがとうございます
Python IDLEでプログラムファイルを作成し、次にペイント3Dで作った画像ファイルを同じ場所に保存しようとしたのですが、作成したプログラムファイルが見つかりませんでした
Python IDLEのメニューからだと見つけられるのですが、ペイント3Dからだと同じ場所を探してもありませんでした
仕方なくPython IDLEのメニューからフォルダを新規作成し、そこにプログラムファイルと画像ファイルをコピペしたのですが、それを実行してもRESTARTと表示されるだけで何も起こりませんでした
PC自体に疎く、説明が上手くできず申し訳ありません
回答ありがとうございます
Python IDLEでプログラムファイルを作成し、次にペイント3Dで作った画像ファイルを同じ場所に保存しようとしたのですが、作成したプログラムファイルが見つかりませんでした
Python IDLEのメニューからだと見つけられるのですが、ペイント3Dからだと同じ場所を探してもありませんでした
仕方なくPython IDLEのメニューからフォルダを新規作成し、そこにプログラムファイルと画像ファイルをコピペしたのですが、それを実行してもRESTARTと表示されるだけで何も起こりませんでした
PC自体に疎く、説明が上手くできず申し訳ありません
2020/10/22(木) 21:01:20.73ID:yc9Jm0+D
OSの種類とバージョンがわからないとどうともいえない
2020/10/22(木) 22:15:35.52ID:3xJ2F0Gf
OSはwindows10で、Pythonのバージョンは3.8です
61デフォルトの名無しさん
2020/10/22(木) 22:21:56.13ID:j2MoRHOc 初心者はとりあえずここ見とけ [無断転載禁止]©2ch.net
http://itest.5ch.net/mevius/test/read.cgi/tech/1497200888/l50
http://itest.5ch.net/mevius/test/read.cgi/tech/1497200888/l50
2020/10/23(金) 00:20:56.29ID:paOGsZZ1
>>60
何bitか書いてけ
何bitか書いてけ
2020/10/23(金) 00:37:25.09ID:L7Q9DyFd
>>62
64bitでした
64bitでした
2020/10/23(金) 00:40:27.13ID:ykqFrr6r
何bitかなんかより、画像ファイルの拡張子合ってますか?
2020/10/23(金) 00:44:59.96ID:L7Q9DyFd
>>64
名前を付けて保存を選択したら.pingという拡張子になったのですがこれではいけないでしょうか…
名前を付けて保存を選択したら.pingという拡張子になったのですがこれではいけないでしょうか…
66デフォルトの名無しさん
2020/10/23(金) 01:32:11.21ID:ykqFrr6r2020/10/23(金) 02:24:54.03
javascriptでいうところのブロック{}で囲んで複数行のコードを書けるような無名関数と同等のものって
pythonだとラムダ式で \ を使う方法しかないっぽいですね?
(lamba:[,,,]みたいな書き方だと変数を外におけば大抵はいけそうですけど)
pythonだとラムダ式で \ を使う方法しかないっぽいですね?
(lamba:[,,,]みたいな書き方だと変数を外におけば大抵はいけそうですけど)
2020/10/23(金) 07:13:03.18ID:loxVAW2U
>>67
Pythonはlambdaで実現できないもの(文)はdefで名前つける必要がある、というルールだから、厳密に同じことはできないのではないかな
見た目は多少ごちゃごちゃするけど、関数内defで困ることはない感じ
Pythonはlambdaで実現できないもの(文)はdefで名前つける必要がある、というルールだから、厳密に同じことはできないのではないかな
見た目は多少ごちゃごちゃするけど、関数内defで困ることはない感じ
2020/10/23(金) 08:35:57.89ID:paOGsZZ1
2020/10/23(金) 09:43:35.64ID:GB49RwlR
>>58
ペイント3Dからpythonのプログラムファイルを見つけようとしたの?
通常ペイント3Dから見えるのはペイント3Dで開ける画像形式だけだよ。
エクスプローラーから両方のファイルが見えるなら正常動作
ペイント3Dからpythonのプログラムファイルを見つけようとしたの?
通常ペイント3Dから見えるのはペイント3Dで開ける画像形式だけだよ。
エクスプローラーから両方のファイルが見えるなら正常動作
71デフォルトの名無しさん
2020/10/23(金) 12:12:46.38ID:nXkr9gOB リスト内の検索で教えて下さい。
[0, 1, 2, 3, 4]
[0, 1, 2, 4, 6]
[1, 2, 3, 4, 6]
:
このようなリストを10000行含むテキストがあります。テキストの中に重複はありません。
sf = open('Search.txt', 'r')
S_list = sf.readlines()
for i in range(20):
print(S_list[i], end='')
として確認すると、ちゃんと読み込まれています。
プログラムの中で、新しい [1, 3, 3, 4, 9]
というリストをつくり、これが読み込んだ S_list に含まれるかという
判定をしたいのですが、すでにある[0, 1, 2, 3, 4]を
'[0, 1, 2, 3, 4]' in S_list
とかを試しても、Falseとなってしまいます。
これでTrueを返すにはどうしたら良いでしょうか。
データの比較は1行そのものにマッチするかという感じです。
関係ないかもしれませんが、データ形式を確認すると
print (type(S_list[0]))
<class 'str'>
となり、読み込まれた行データはstrとなっているようです。
どうか、よろしくおねがいします。
[0, 1, 2, 3, 4]
[0, 1, 2, 4, 6]
[1, 2, 3, 4, 6]
:
このようなリストを10000行含むテキストがあります。テキストの中に重複はありません。
sf = open('Search.txt', 'r')
S_list = sf.readlines()
for i in range(20):
print(S_list[i], end='')
として確認すると、ちゃんと読み込まれています。
プログラムの中で、新しい [1, 3, 3, 4, 9]
というリストをつくり、これが読み込んだ S_list に含まれるかという
判定をしたいのですが、すでにある[0, 1, 2, 3, 4]を
'[0, 1, 2, 3, 4]' in S_list
とかを試しても、Falseとなってしまいます。
これでTrueを返すにはどうしたら良いでしょうか。
データの比較は1行そのものにマッチするかという感じです。
関係ないかもしれませんが、データ形式を確認すると
print (type(S_list[0]))
<class 'str'>
となり、読み込まれた行データはstrとなっているようです。
どうか、よろしくおねがいします。
72デフォルトの名無しさん
2020/10/23(金) 12:26:54.44ID:5NWyTruo S_listに入ってるのは '[0, 1, 2, 3, 4]'という文字列
でもあんたが欲しいのはきっとリストの集合でしょ
printすりゃリストのように見えるのも当然
でもあんたが欲しいのはきっとリストの集合でしょ
printすりゃリストのように見えるのも当然
73デフォルトの名無しさん
2020/10/23(金) 12:30:01.02ID:5NWyTruo だから「新しい [1, 3, 3, 4, 9]というリスト」じゃなくて
「『新しい [1, 3, 3, 4, 9]というリスト』を文字列にした、'[1, 3, 3, 4, 9]'という文字列」をS_listに入れる
リスト[1, 3, 3, 4, 9]をprintとしたときの見映えと、'[1, 3, 3, 4, 9]'という文字列をprintした時の見映え、一緒になるでしょ
だから見ても分らない
「『新しい [1, 3, 3, 4, 9]というリスト』を文字列にした、'[1, 3, 3, 4, 9]'という文字列」をS_listに入れる
リスト[1, 3, 3, 4, 9]をprintとしたときの見映えと、'[1, 3, 3, 4, 9]'という文字列をprintした時の見映え、一緒になるでしょ
だから見ても分らない
2020/10/23(金) 12:33:45.18ID:vvEFmscd
> すでにある[0, 1, 2, 3, 4]を
>
> '[0, 1, 2, 3, 4]' in S_list
> とかを試しても、Falseとなってしまいます。
先にこれに答えてあげたら?
>
> '[0, 1, 2, 3, 4]' in S_list
> とかを試しても、Falseとなってしまいます。
先にこれに答えてあげたら?
2020/10/23(金) 12:42:54.50ID:abzAGR5J
76デフォルトの名無しさん
2020/10/23(金) 13:28:22.51ID:nXkr9gOB コメントとありがとうございます。
確かにおっしゃるとおり[0,1,2,3,4]をある組み合わせの数値リストとして
利用しています。例は5個の組み合わせですが、実際は10個の数値リスト
を一つの組み合わせとしています。
そのため、一つの組み合わせを調べるのにもそれなりに時間がかかるため、
すでに調べた組み合わせのリスト化し(それがs_listです。)、新しい
組み合わせがそのリストの中にあれば、再調査する必要がないので
「リストの中を検索して同じ組み合わせがあるか」を調べたいと考えたわけ
です。
そのため、目的は文字列として一致していれば良いので、(type(S_list[0])
がstrでも問題はないかと思っています。
python自体が今回はじめてなので、的外れでしたらすみません。
確かにおっしゃるとおり[0,1,2,3,4]をある組み合わせの数値リストとして
利用しています。例は5個の組み合わせですが、実際は10個の数値リスト
を一つの組み合わせとしています。
そのため、一つの組み合わせを調べるのにもそれなりに時間がかかるため、
すでに調べた組み合わせのリスト化し(それがs_listです。)、新しい
組み合わせがそのリストの中にあれば、再調査する必要がないので
「リストの中を検索して同じ組み合わせがあるか」を調べたいと考えたわけ
です。
そのため、目的は文字列として一致していれば良いので、(type(S_list[0])
がstrでも問題はないかと思っています。
python自体が今回はじめてなので、的外れでしたらすみません。
2020/10/23(金) 13:45:29.78ID:0ETx0fm7
回答者は型としてのリストと勘違いしてるようだけど、質問でいうリストって単なる文字列のことだよね。
文字列比較がうまくいかないって聞いてるんだと思うけど。
文字列比較がうまくいかないって聞いてるんだと思うけど。
2020/10/23(金) 13:52:27.99ID:1Lfwgj44
Ruby なら配列同士を、<=> で比較するだけ
p [ 1, 2, 3 ] <=> [ 1, 2, 3 ] #=> 0
自身と other の各要素をそれぞれ順に、<=> で比較していき、
結果が 0 でなかった場合に、その値を返します
各要素が等しく、配列の長さも等しい場合には 0 を返します
p [ 1, 2, 3 ] <=> [ 1, 2, 3 ] #=> 0
自身と other の各要素をそれぞれ順に、<=> で比較していき、
結果が 0 でなかった場合に、その値を返します
各要素が等しく、配列の長さも等しい場合には 0 を返します
2020/10/23(金) 14:16:49.16ID:I6W4x6m7
print(True) if '' else raise Exception('err')
参考演算子の中でraiseって使えないのですか?
参考演算子の中でraiseって使えないのですか?
80デフォルトの名無しさん
2020/10/23(金) 14:23:32.89ID:nXkr9gOB 71です。
いろいろお騒がせしましたが解決しましたのでご報告いたします。
原因は75さんのおっしゃるとおり改行コードでした。
いろいろ試しているうちに、
S_list[0] in S_list
ならTrueを返すことに気がつきました。
そこで
[0,1,2,3,4] +'\n' in S_listとやったら
無事、Trueが帰ってきてくれました。
これを解決するのに4時間ほど要しましたが(汗)
苦しいけれどプログラミングは面白いですね。
まだまだ勉強が足りません。
みなさん、ご協力ありがとうございました。
いろいろお騒がせしましたが解決しましたのでご報告いたします。
原因は75さんのおっしゃるとおり改行コードでした。
いろいろ試しているうちに、
S_list[0] in S_list
ならTrueを返すことに気がつきました。
そこで
[0,1,2,3,4] +'\n' in S_listとやったら
無事、Trueが帰ってきてくれました。
これを解決するのに4時間ほど要しましたが(汗)
苦しいけれどプログラミングは面白いですね。
まだまだ勉強が足りません。
みなさん、ご協力ありがとうございました。
8178
2020/10/23(金) 14:28:49.18ID:1Lfwgj44 Ruby で作った
require "json"
json = <<'JSON'
[0, 1, 2, 3, 4]
[0, 1, 2, 4, 6]
[1, 2, 3, 4, 6]
JSON
json.each_line.with_index( 1 ) do | line, idx | # 各行・添字
ary = JSON.parse( line )
if ( ary <=> [ 0, 1, 2, 4, 6 ] ) == 0 # 同一なら
puts "#{ idx }行目と一致しました!"
break
end
end
出力
2行目と一致しました!
require "json"
json = <<'JSON'
[0, 1, 2, 3, 4]
[0, 1, 2, 4, 6]
[1, 2, 3, 4, 6]
JSON
json.each_line.with_index( 1 ) do | line, idx | # 各行・添字
ary = JSON.parse( line )
if ( ary <=> [ 0, 1, 2, 4, 6 ] ) == 0 # 同一なら
puts "#{ idx }行目と一致しました!"
break
end
end
出力
2行目と一致しました!
8279
2020/10/23(金) 15:04:56.16ID:I6W4x6m7 関数にして実行することにしました
def _inter(msg):
_raise Exception(msg)
print(True) if '' else _inter('err')
def _inter(msg):
_raise Exception(msg)
print(True) if '' else _inter('err')
2020/10/23(金) 18:20:11.52ID:VhlDKsUn
2020/10/23(金) 22:00:16.63ID:L1dflzY5
以下のGitHubのコードで
https://github.com/jstasiak/python-zeroconf/blob/master/examples/browser.py
「def on_service_state_change(....) -> None:」
という箇所があるのですが、 「-> None」というのはどういう意味・どういう処理ですか?
初めて見たのですが、検索に引っかかりにくそうな文字列なので教えてください。
戻り値がないことを明示するような何かでしょうか?
https://github.com/jstasiak/python-zeroconf/blob/master/examples/browser.py
「def on_service_state_change(....) -> None:」
という箇所があるのですが、 「-> None」というのはどういう意味・どういう処理ですか?
初めて見たのですが、検索に引っかかりにくそうな文字列なので教えてください。
戻り値がないことを明示するような何かでしょうか?
2020/10/23(金) 22:26:52.76ID:0nvuAgk9
ググれば普通に出てくるけど
返り値がないことを明示するもの
実行時の影響はない、人間が読みやすくするため
返り値がないことを明示するもの
実行時の影響はない、人間が読みやすくするため
86デフォルトの名無しさん
2020/10/23(金) 22:27:25.36ID:hTSzdhIi2020/10/23(金) 22:28:56.45ID:zsVfkhmi
>>86
Pythonで一番わかりやすいサイト
Pythonで一番わかりやすいサイト
2020/10/24(土) 02:17:03.53ID:JC525kC6
モジュール等の関数の引数で、単体の文字列でも、文字列のリスト型でも渡せるようなものがありますが、あれは関数内でリストかどうか判別して処理してるんでしょうか。
たとえば↓こんな処理があるとして
for str in str_list:
___ print(str)
str_list = ['abc', 'def']
str_list = 'abc'
のどちらでも、'abc'はひとかたまりに'abc'と扱うようなシンプルな書き方はありますか?
if type(str_list) != list:
___ str_list = [str_list]
のように1個だけのリストに置き換えてあげないとダメですかね
たとえば↓こんな処理があるとして
for str in str_list:
___ print(str)
str_list = ['abc', 'def']
str_list = 'abc'
のどちらでも、'abc'はひとかたまりに'abc'と扱うようなシンプルな書き方はありますか?
if type(str_list) != list:
___ str_list = [str_list]
のように1個だけのリストに置き換えてあげないとダメですかね
2020/10/24(土) 07:04:59.96ID:RnpA+Mw5
>>88
エスパーしてみると、
どっちがこようが、中身を1つずつfor文ブン回して処理してて
その中でさらにlen()を使ったりして中身の中身が1文字になるまでfor文ブン回してるなら
リストがこようがstrがこようが問題ない
エスパーしてみると、
どっちがこようが、中身を1つずつfor文ブン回して処理してて
その中でさらにlen()を使ったりして中身の中身が1文字になるまでfor文ブン回してるなら
リストがこようがstrがこようが問題ない
2020/10/24(土) 10:26:22.07ID:lgAxN1Yc
>>71
def func(*args):
if len(args) == 1 and isinstance(args[0], (list, tuple)):
return func(*args[0])
for s in args:
print(s)
書いては見たものの、普通に分岐して処理を分けたほうが効率も可読性も上がると思う
def func(*args):
if len(args) == 1 and isinstance(args[0], (list, tuple)):
return func(*args[0])
for s in args:
print(s)
書いては見たものの、普通に分岐して処理を分けたほうが効率も可読性も上がると思う
2020/10/24(土) 10:27:34.10ID:lgAxN1Yc
安価間違えた
2020/10/24(土) 11:23:27.37ID:878uww5f
93デフォルトの名無しさん
2020/10/24(土) 12:43:38.66ID:+LCko2A7 >>88
>モジュール等の関数の引数で、単体の文字列でも、文字列のリスト型でも渡せるようなものがありますが
ものがあるならそれを見ろよ
見てもわからないならそのリンクを貼れよ
何で馬鹿正直にここでコードを書いてるんだ
>モジュール等の関数の引数で、単体の文字列でも、文字列のリスト型でも渡せるようなものがありますが
ものがあるならそれを見ろよ
見てもわからないならそのリンクを貼れよ
何で馬鹿正直にここでコードを書いてるんだ
2020/10/24(土) 17:18:10.10ID:lO0DTzsg
main.py から hoge.py をimportするとき、 hoge.py が main.py と同じディレクトリにあることを
明示的に示したい場合はimportをどのように書くのが正しいんでしょうか。
import hoge で一応実行はできますが、vscode(Pylance)から認識できなくて警告が出ます。
from . import hoge とするとvscodeで認識されるようになるのですがpythonの実行がエラーになります。
もしかしたらvscodeがおかしいのかもしれませんが。
明示的に示したい場合はimportをどのように書くのが正しいんでしょうか。
import hoge で一応実行はできますが、vscode(Pylance)から認識できなくて警告が出ます。
from . import hoge とするとvscodeで認識されるようになるのですがpythonの実行がエラーになります。
もしかしたらvscodeがおかしいのかもしれませんが。
95デフォルトの名無しさん
2020/10/24(土) 17:20:55.44ID:+GevKgJx from . import hoge
でももちろん OK
sys.path.append('.') の反対で sys.path の先頭に '.' が来るようにすれば良いんじゃね
でももちろん OK
sys.path.append('.') の反対で sys.path の先頭に '.' が来るようにすれば良いんじゃね
96デフォルトの名無しさん
2020/10/24(土) 17:21:54.71ID:+GevKgJx あと
main.py のディレクトリに
__init__.py
を造る
main.py のディレクトリに
__init__.py
を造る
97デフォルトの名無しさん
2020/10/24(土) 21:32:18.14ID:d1F6LvKA > お前は毎朝起きるたびに俺に負けたことを思い出すよ^^
あー、ホンッとに思い出すなあ(笑)
キチガイの嘘つきの低レベルFランの、
朝鮮ゴキブリBot君は、
チョン独特の「なにもできないけど俺のほうがジャップより偉い!」的な
ことはよーくわかったよ。
ホントなにもできない朝鮮ゴキブリBot君!
クソチョンw
Pythonさえろくにできないバカチョンのくせに
できるとほざくクソチョンw
日本で強姦と窃盗を繰り返す
犯罪者在日のクソチョンw
あー、ホンッとに思い出すなあ(笑)
キチガイの嘘つきの低レベルFランの、
朝鮮ゴキブリBot君は、
チョン独特の「なにもできないけど俺のほうがジャップより偉い!」的な
ことはよーくわかったよ。
ホントなにもできない朝鮮ゴキブリBot君!
クソチョンw
Pythonさえろくにできないバカチョンのくせに
できるとほざくクソチョンw
日本で強姦と窃盗を繰り返す
犯罪者在日のクソチョンw
2020/10/24(土) 22:17:47.25ID:lO0DTzsg
ありがとうございます。
どうも from . の相対指定は __main__ からは使えないようですね。
なんでvscodeは import hoge だと見つけてくれないんだろう。
どうも from . の相対指定は __main__ からは使えないようですね。
なんでvscodeは import hoge だと見つけてくれないんだろう。
2020/10/25(日) 10:06:10.70ID:yMGC2owQ
配列を回転させるにはどういうロジックを使うんでしょうか?
テトリミノです
これを
var mino = [
[1,0,0,0],
[1,1,1,0],
[0,0,0,0]
]
var mino = [
[0,0,0,1],
[0,1,1,1],
[0,0,0,0]
]
こうしたいのですが、1つの目の配列のmino[1][2]番目にある配列を原点としたいので、並行移動も必要かとは思います
あるいは配列のフィールドを大きくする必要がありますね
var mino = [
[1,0,0,0,0,0],
[1,1,1,0,0,0],
[0,0,0,0,0,0]
]
var mino = [
[0,0,0,0,0,1],
[0,0,0,1,1,1],
[0,0,0,0,0,0]
]
テトリミノです
これを
var mino = [
[1,0,0,0],
[1,1,1,0],
[0,0,0,0]
]
var mino = [
[0,0,0,1],
[0,1,1,1],
[0,0,0,0]
]
こうしたいのですが、1つの目の配列のmino[1][2]番目にある配列を原点としたいので、並行移動も必要かとは思います
あるいは配列のフィールドを大きくする必要がありますね
var mino = [
[1,0,0,0,0,0],
[1,1,1,0,0,0],
[0,0,0,0,0,0]
]
var mino = [
[0,0,0,0,0,1],
[0,0,0,1,1,1],
[0,0,0,0,0,0]
]
100デフォルトの名無しさん
2020/10/25(日) 10:14:15.45ID:ems4w7oQ >>99
テトリミノごときでは、予め
リスト_ブロックの種類その1=[向きその1の座標リスト、同2,3,4]
みたいに
全種類のブロック、全向きの描画指示リストを作ってしまっておき、
右回転ボタンを押したら リスト_ブロックの種類その1[ここの中を1足せ!]
左回転なら リスト_ブロックの種類その1[ここの中を1引く!]
で、ブロックアイコン部分を処理し、
上下左右ボタン押下時は描画中央点の座標を移動させる
とやるのが定番らしいぞ。
テトリミノごときでは、予め
リスト_ブロックの種類その1=[向きその1の座標リスト、同2,3,4]
みたいに
全種類のブロック、全向きの描画指示リストを作ってしまっておき、
右回転ボタンを押したら リスト_ブロックの種類その1[ここの中を1足せ!]
左回転なら リスト_ブロックの種類その1[ここの中を1引く!]
で、ブロックアイコン部分を処理し、
上下左右ボタン押下時は描画中央点の座標を移動させる
とやるのが定番らしいぞ。
101デフォルトの名無しさん
2020/10/25(日) 10:24:53.87ID:yMGC2owQ■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 「もうキモくてキモくて…」29歳女性が語る“おぢアタック”の実態。「俺ならイケるかも」年下女性を狙う勘違い中年男性に共通点が★4 [Hitzeschleier★]
- ミス・ユニバース フィンランド代表の「つり目」写真が波紋… 本人釈明も批判やまず 協会謝罪「徹底的に検証」へ [冬月記者★]
- 自民・麻生太郎副総裁 石破政権の1年は「どよーん」 高市政権発足で「何となく明るくなった」「世の中のことが決まり動いている」★2 [Hitzeschleier★]
- 【おこめ券】鈴木憲和農相 小泉前農相の備蓄米放出を“反省”「備蓄の円滑な運営を図ってまいります」 [Hitzeschleier★]
- 1人3千円の食品高騰対策、何に使える? あいまいなまま衆院通過 [蚤の市★]
- ゆたぼん 二重手術を報告「めちゃくちゃ気に入っています」 [muffin★]
- トランプ、G7に代わるcore 5を発表 [805596214]
- お前らがやってるバイト教えて
- 【悲報】新米、全く売れなくて倉庫が満杯になってしまうwwwwwwwwwwwwwwwwwwww [802034645]
- 上司がアンパンマン体操のリズムで「アンポンタンは君か〜?」って歌うんやが
- 【悲報】日本共産党、ツイッター速報にブチギレ法的措置WWWWWWWWWWWWWWWWWWWWWWWWWWWW [935793931]
- 女だけど友達の家行こうと思ったけど車動かないんだけど
