[過去ログ] くだすれPython(超初心者用) その51【まず1嫁】 (983レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
1
(1): 2020/10/17(土)10:05 ID:1RQ0Wdhu(1) AAS
AA省
2: 2020/10/17(土)11:27 ID:1thDdeTA(1) AAS
>>1
a="うとがりあ"
print(a[::-1])
3: 2020/10/17(土)14:00 ID:dPJ220D1(1) AAS
いちおつ有能
4
(1): 2020/10/17(土)14:05 ID:6+t3jHck(1) AAS
おっぱいそん
5: 2020/10/17(土)14:13 ID:Y2egJtFL(1) AAS
可読性を犠牲にして実行速度を得られるPythonのコードってどういう例がありますか?
6: 2020/10/17(土)15:29 ID:tgqu+4qK(1) AAS
くだれす〜
7: 2020/10/17(土)16:37 ID:SpKdHUv/(1) AAS
> お前は毎朝起きるたびに俺に負けたことを思い出すよ^^

あー、ホンッとに思い出すなあ(笑)
キチガイの嘘つきの低レベルFランの、
朝鮮ゴキブリBot君は、
チョン独特の「なにもできないけど俺のほうがジャップより偉い!」的な
ことはよーくわかったよ。
ホントなにもできない朝鮮ゴキブリBot君!

クソチョンw

Pythonさえろくにできないバカチョンのくせに
できるとほざくクソチョンw
省2
8: 2020/10/17(土)21:23 ID:ia6CZUvY(1) AAS
でたw
9: 2020/10/17(土)22:57 ID:aI2oeiUv(1) AAS
何があったか知らんけど、7みたいな中学生をコテンパンに言い負かしたやつが悪い
10
(3): 2020/10/18(日)00:29 ID:BP1EUUz6(1) AAS
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は想定の結果となる
省6
11
(1): 2020/10/18(日)00:50 ID:/Z/JZuKT(1) AAS
つlist_list.append(list_a+['d'])
12
(1): 2020/10/18(日)01:09 ID:XIKHaV9E(1/2) AAS
listを継承して、append後にselfを返すメソッドでも実装しなはれ
13
(1): 2020/10/18(日)01:13 ID:XIKHaV9E(2/2) AAS
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))
14
(1): 2020/10/18(日)09:52 ID:h0an4siz(1) AAS
>>10
list_list = [*list_a, 'd']
15
(1): 2020/10/18(日)10:28 ID:+vZczgoX(1) AAS
>>10
オブジェクトを直接変更するメソッドは変更後のオブジェクトを返さないのが
Pythonの基本的な考え方なので
(2)の動作を求めてるならそのまま2行で書くやり方に慣れたほうがいい
16
(1): 2020/10/18(日)11:01 ID:vmWunLYe(1) AAS
>>10
そう言うのは関数型言語的な発想。
もしくは同じオブジェクト指向でもメッセージパッシング主体のSmalltalkやRubyの発想。
Pythonのオブジェクト指向はC++的。

美しきHaskell畑へようこそ。
17: 2020/10/18(日)11:13 ID:XoxqzEVb(1) AAS
c++でも自身を返す関数は多いけどな。
streamとか
18: 2020/10/18(日)11:30 ID:H1xH1BRx(1) AAS
他の言語知ってても
python 初心者の頃は仕方ない
sort() sorted() でも混乱するし
len() はナニコレって思う
19: 2020/10/18(日)13:40 ID:LTF40fUE(1/2) AAS
むかし無印C そしてアセンブラをちょっとやってPythonに来たんだけど
len()便利!って思ったおもひで
20
(1): 2020/10/18(日)19:26 ID:sP6Ssfc9(1) AAS
Windows版 Anacondaでenv配下のpython exeを直叩きするとライブラリのエラーを吐く(baseが起動されてる?)んですがこれって仕様ですか?
Ubuntuで使ってたときはpython直叩きで普通に動いてたのですが…
21: 2020/10/18(日)20:12 ID:LTF40fUE(2/2) AAS
>>20
パスが通ってないんでねーの
22: 2020/10/19(月)01:51 ID:/dP3R2fY(1) AAS
>>11-16
遅くなりすみませんが、ありがとうございました。
そういうもの、ということでpythonに慣れていきたいと思います。
23
(1): 2020/10/19(月)02:50 ID:OVCmHBqA(1) AAS
[{"a":1},{"a":2}]
みたいなネストされた複数辞書をjson.loadで読み込むことに成功はしたのですが
なぜか相対パスだと成功して絶対パスだと
dictionary update sequence element #0 has length 1; 2 is required
なエラーがでて失敗します
なんでですか
24: 2020/10/19(月)03:26 ID:DsKIoN0Z(1) AAS
意味がわからないのでコード全体を書いてください
25: 2020/10/19(月)07:24 ID:zWJLigJ7(1) AAS
>>23
エスパーすると
フルパスの中の
半角スペースか
2バイト文字が
悪事を働いている

あるいは
ダメ文字
26: 2020/10/19(月)09:36 ID:4EZdKnY4(1) AAS
違うファイルを読んでるに一票
27: [に] 2020/10/19(月)12:02 ID:asy7wTux(1/2) AAS
ユーザー名全角文字半角スペースとか入れるやつはあほ
28: 2020/10/19(月)12:31 ID:qGPDmfjh(1) AAS
楽天三木谷もkoboアカウントの件でそんなことを言っていたな
29: 2020/10/19(月)13:15 ID:7uyYHFbc(1) AAS
実はPHPだったに一票
1も読まない質問者だからありえる
30
(1): 2020/10/19(月)13:22 ID:xZeEkj1k(1) AAS
今どき全角だから受け付けないとか許されんわ。
うっかり世界中に絵文字を流行らせてしまった責任取れ
31: 2020/10/19(月)13:27 ID:asy7wTux(2/2) AAS
ソースのエンコード
テキストデータのエンコード
ファイルシステムのエンコード
把握しとけよ
32: 2020/10/19(月)21:01 ID:2Is2q0wK(1) AAS
>>30
表示の問題でスペースに見える文字がたくさんある
これらを認めることにするのかしないのか決めないといけない
33: 2020/10/20(火)13:43 ID:ysKzRYjJ(1) AAS
簡単な検索サイトみたいなの作りたく5月に初プログラミングでPythonはじめて、1ヶ月くらいで原型はできてきたけど
そこからMysqlの速度改善、いろんなケースの対応とか修正改良に何ヶ月もかかってしまった…
まだHTMLとCSSもほとんどできてないし、ウェブサイト作成の道のりがこんなに長いとは思わなかった
最初に完成形を思い描いておいて正解だった。目標が見えてなかったらとっくに挫折してる
34: 2020/10/20(火)15:21 ID:Zx1gytYL(1) AAS
おきばりやす
35
(3): 2020/10/20(火)16:29 ID:eycpLBp6(1) AAS
AA省
36
(2): 2020/10/20(火)17:17 ID:EATBGB0m(1/2) AAS
>>35
ないからって
絶対作るなよ!
なんでそんなところをはしょろうとするんだよ
37
(1): 2020/10/20(火)17:29 ID:nDz4VJ3V(1) AAS
__iter__()
38
(1): 2020/10/20(火)17:31 ID:vcQhkuUZ(1) AAS
>>35
[Python] イテレータを実装する - Qiita
外部リンク:qiita.com

Python3 – __iter()__によるイテレーターの実装 – TauStation
外部リンク:taustation.com

Pythonの特殊メソッド一覧を備忘録としてまとめてみた。 - Qiita
外部リンク:qiita.com

C++やJavaに慣れていればどうということは無いかんたんな仕組み
39: 2020/10/20(火)17:41 ID:iUu5GsdY(1) AAS
>>36
ちょw
40
(1): 2020/10/20(火)19:50 ID:HzDHbN9N(1) AAS
>>35
__iter__でa.dataを戻り値
41
(1): 2020/10/20(火)19:57 AAS
AA省
42: 2020/10/20(火)20:04 ID:EATBGB0m(2/2) AAS
>>41
むやみにクラス化すんなや
「とりあえずでクラスにするのやめよう」
43
(1): 2020/10/20(火)20:09 AAS
だめだ会話が成り立たない
クラスにするかどうかってここで関係あるのかなぁ…
>ないからって
というのはどういう意図で言ったのか聞きたかっただけなのに
44
(1): 2020/10/20(火)22:38 ID:vwGc/p8H(1) AAS
自分は逆に、こういうのでもクラスを使うほうがいいのかと思ってしまった
いまだに自作のクラスを使わないといけない状況にあったことがないので
だから全然クラスの知識が増えない
45: 2020/10/20(火)22:50 ID:19yz3Hql(1) AAS
pandasでカラム1〜カラム10まであるとして、
axis=1の方向でソートして3番目の値を新たにカラム11とする場合の書き方を教えてください。
カラム1〜10はすべて数値です。
46: 2020/10/21(水)11:34 ID:zDJAgP8g(1) AAS
勉強始めてまだ3日目。まだアンダーバーの意味すらわからん。
カメに捕まってしまいましたし。
47
(1): 2020/10/21(水)12:31 ID:xBgAWF1Y(1) AAS
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)
48: 2020/10/21(水)13:56 ID:c5E90NOp(1) AAS
>>44おれこっち

>>43ID隠しうんこ野郎だったのかよ
質問するときもちゃんとうんこはつけておけよ!
49: 2020/10/21(水)20:40 ID:xIbMleXq(1) AAS
>>47
ありがとうございます!
50: 2020/10/21(水)21:38 ID:AdaVgrBD(1) AAS
確かにID隠しはカスが多いイメージなので自分も無視しよう
51
(2): 2020/10/21(水)23:59 ID:eEy42ac7(1) AAS
先週からPythonを始めた初心者です
手書きの数字を書いた画像ファイルからその数字を予測させるプログラ厶を作っているのですが、作ったプログラムファイルと画像ファイルを同一フォルダ内に入れるにはどうすればいいでしょうか?
画像ファイルはペイント3Dで作成したものです
コード以前の質問で申し訳ありません
52
(1): 2020/10/22(木)02:29 ID:9XviiwvN(1) AAS
>>51
ペイント3Dで画像を保存する時にプログラムファイルと同じフォルダを指定して保存すれば良いんじゃないの?
処理の手順とか書いてくれたら何がしたいのか分かるかも
53: 2020/10/22(木)10:41 ID:vPWH9GQz(1) AAS
退屈な事はpythonにやらせよう
54: 2020/10/22(木)12:34 ID:HXHhKphi(1) AAS
ゴミ出しと風呂掃除頼む。
55: 2020/10/22(木)14:48 ID:iRctxXkJ(1) AAS
料理洗濯も
56: 2020/10/22(木)14:50 ID:RUAley9J(1) AAS
自発呼吸頼むわ
57: 2020/10/22(木)15:39 ID:/vtiKtyR(1) AAS
代わりにトイレに行ってくれると助かる
58
(1): 2020/10/22(木)19:58 ID:3xJ2F0Gf(1/2) AAS
>>52
回答ありがとうございます
Python IDLEでプログラムファイルを作成し、次にペイント3Dで作った画像ファイルを同じ場所に保存しようとしたのですが、作成したプログラムファイルが見つかりませんでした
Python IDLEのメニューからだと見つけられるのですが、ペイント3Dからだと同じ場所を探してもありませんでした
仕方なくPython IDLEのメニューからフォルダを新規作成し、そこにプログラムファイルと画像ファイルをコピペしたのですが、それを実行してもRESTARTと表示されるだけで何も起こりませんでした
PC自体に疎く、説明が上手くできず申し訳ありません
59: 2020/10/22(木)21:01 ID:yc9Jm0+D(1) AAS
OSの種類とバージョンがわからないとどうともいえない
60
(1): 2020/10/22(木)22:15 ID:3xJ2F0Gf(2/2) AAS
OSはwindows10で、Pythonのバージョンは3.8です
61: 2020/10/22(木)22:21 ID:j2MoRHOc(1) AAS
初心者はとりあえずここ見とけ [無断転載禁止]©2ch.net
2chスレ:tech
62
(1): 2020/10/23(金)00:20 ID:paOGsZZ1(1/2) AAS
>>60
何bitか書いてけ
63
(1): 2020/10/23(金)00:37 ID:L7Q9DyFd(1/2) AAS
>>62
64bitでした
64
(1): 2020/10/23(金)00:40 ID:ykqFrr6r(1/2) AAS
何bitかなんかより、画像ファイルの拡張子合ってますか?
65
(2): 2020/10/23(金)00:44 ID:L7Q9DyFd(2/2) AAS
>>64
名前を付けて保存を選択したら.pingという拡張子になったのですがこれではいけないでしょうか…
66: 2020/10/23(金)01:32 ID:ykqFrr6r(2/2) AAS
>>65
いけない子ですねー、バチが当たります。
>>51> "数字を予測させるプログラ厶"
はそんな.ping子を呼びだしとるんかね?
67
(1): 2020/10/23(金)02:24 AAS
javascriptでいうところのブロック{}で囲んで複数行のコードを書けるような無名関数と同等のものって
pythonだとラムダ式で \ を使う方法しかないっぽいですね?
(lamba:[,,,]みたいな書き方だと変数を外におけば大抵はいけそうですけど)
68: 2020/10/23(金)07:13 ID:loxVAW2U(1) AAS
>>67
Pythonはlambdaで実現できないもの(文)はdefで名前つける必要がある、というルールだから、厳密に同じことはできないのではないかな
見た目は多少ごちゃごちゃするけど、関数内defで困ることはない感じ
69: 2020/10/23(金)08:35 ID:paOGsZZ1(2/2) AAS
>>63
とりまおkだが

>>65
あーだめだな
70: 2020/10/23(金)09:43 ID:GB49RwlR(1) AAS
>>58
ペイント3Dからpythonのプログラムファイルを見つけようとしたの?
通常ペイント3Dから見えるのはペイント3Dで開ける画像形式だけだよ。
エクスプローラーから両方のファイルが見えるなら正常動作
71
(2): 2020/10/23(金)12:12 ID:nXkr9gOB(1/3) AAS
リスト内の検索で教えて下さい。
[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='')
省13
72: 2020/10/23(金)12:26 ID:5NWyTruo(1/2) AAS
S_listに入ってるのは '[0, 1, 2, 3, 4]'という文字列
でもあんたが欲しいのはきっとリストの集合でしょ

printすりゃリストのように見えるのも当然
73: 2020/10/23(金)12:30 ID:5NWyTruo(2/2) AAS
だから「新しい [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した時の見映え、一緒になるでしょ
だから見ても分らない
74: 2020/10/23(金)12:33 ID:vvEFmscd(1) AAS
> すでにある[0, 1, 2, 3, 4]を
>
> '[0, 1, 2, 3, 4]' in S_list
> とかを試しても、Falseとなってしまいます。

先にこれに答えてあげたら?
75: 2020/10/23(金)12:42 ID:abzAGR5J(1) AAS
>>71
改行コードが含まれてるからだよ
デバッグすればS_list[0]に何が入ってるか確認できるでしょ
76: 2020/10/23(金)13:28 ID:nXkr9gOB(2/3) AAS
コメントとありがとうございます。

確かにおっしゃるとおり[0,1,2,3,4]をある組み合わせの数値リストとして
利用しています。例は5個の組み合わせですが、実際は10個の数値リスト
を一つの組み合わせとしています。

そのため、一つの組み合わせを調べるのにもそれなりに時間がかかるため、
すでに調べた組み合わせのリスト化し(それがs_listです。)、新しい
組み合わせがそのリストの中にあれば、再調査する必要がないので
「リストの中を検索して同じ組み合わせがあるか」を調べたいと考えたわけ
です。

そのため、目的は文字列として一致していれば良いので、(type(S_list[0])
省2
77: 2020/10/23(金)13:45 ID:0ETx0fm7(1) AAS
回答者は型としてのリストと勘違いしてるようだけど、質問でいうリストって単なる文字列のことだよね。
文字列比較がうまくいかないって聞いてるんだと思うけど。
78
(1): 2020/10/23(金)13:52 ID:1Lfwgj44(1/2) AAS
Ruby なら配列同士を、<=> で比較するだけ

p [ 1, 2, 3 ] <=> [ 1, 2, 3 ] #=> 0

自身と other の各要素をそれぞれ順に、<=> で比較していき、
結果が 0 でなかった場合に、その値を返します

各要素が等しく、配列の長さも等しい場合には 0 を返します
79
(2): 2020/10/23(金)14:16 ID:I6W4x6m7(1/2) AAS
print(True) if '' else raise Exception('err')

参考演算子の中でraiseって使えないのですか?
80: 2020/10/23(金)14:23 ID:nXkr9gOB(3/3) AAS
71です。

いろいろお騒がせしましたが解決しましたのでご報告いたします。
原因は75さんのおっしゃるとおり改行コードでした。

いろいろ試しているうちに、
S_list[0] in S_list
ならTrueを返すことに気がつきました。
そこで
[0,1,2,3,4] +'\n' in S_listとやったら
無事、Trueが帰ってきてくれました。

これを解決するのに4時間ほど要しましたが(汗)
省3
81: 78 2020/10/23(金)14:28 ID:1Lfwgj44(2/2) AAS
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 # 同一なら
省6
82: 79 2020/10/23(金)15:04 ID:I6W4x6m7(2/2) AAS
関数にして実行することにしました
def _inter(msg):
_raise Exception(msg)
print(True) if '' else _inter('err')
83: 2020/10/23(金)18:20 ID:VhlDKsUn(1) AAS
>>79
三項式は”<式> if <条件式> else <式>”の形
式のところに文を書くことはできない
raiseは文
84: 2020/10/23(金)22:00 ID:L1dflzY5(1) AAS
以下のGitHubのコードで
外部リンク[py]:github.com

「def on_service_state_change(....) -> None:」

という箇所があるのですが、 「-> None」というのはどういう意味・どういう処理ですか?
初めて見たのですが、検索に引っかかりにくそうな文字列なので教えてください。
戻り値がないことを明示するような何かでしょうか?
85: 2020/10/23(金)22:26 ID:0nvuAgk9(1) AAS
ググれば普通に出てくるけど
返り値がないことを明示するもの
実行時の影響はない、人間が読みやすくするため
86
(1): 2020/10/23(金)22:27 ID:hTSzdhIi(1) AAS
外部リンク:note.nkmk.me
87: 2020/10/23(金)22:28 ID:zsVfkhmi(1) AAS
>>86
Pythonで一番わかりやすいサイト
88
(3): 2020/10/24(土)02:17 ID:JC525kC6(1) AAS
モジュール等の関数の引数で、単体の文字列でも、文字列のリスト型でも渡せるようなものがありますが、あれは関数内でリストかどうか判別して処理してるんでしょうか。

たとえば↓こんな処理があるとして
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個だけのリストに置き換えてあげないとダメですかね
89: 2020/10/24(土)07:04 ID:RnpA+Mw5(1) AAS
>>88
エスパーしてみると、
どっちがこようが、中身を1つずつfor文ブン回して処理してて
その中でさらにlen()を使ったりして中身の中身が1文字になるまでfor文ブン回してるなら
リストがこようがstrがこようが問題ない
90: 2020/10/24(土)10:26 ID:lgAxN1Yc(1/2) AAS
>>71
def func(*args):
if len(args) == 1 and isinstance(args[0], (list, tuple)):
return func(*args[0])

for s in args:
print(s)

書いては見たものの、普通に分岐して処理を分けたほうが効率も可読性も上がると思う
91: 2020/10/24(土)10:27 ID:lgAxN1Yc(2/2) AAS
安価間違えた
92: 2020/10/24(土)11:23 ID:878uww5f(1) AAS
>>88
一般的にはリストかどうかを判定するんじゃなく
渡されたiterableがstrかどうかを判定して分岐させる
93: 2020/10/24(土)12:43 ID:+LCko2A7(1) AAS
>>88
>モジュール等の関数の引数で、単体の文字列でも、文字列のリスト型でも渡せるようなものがありますが
ものがあるならそれを見ろよ
見てもわからないならそのリンクを貼れよ

何で馬鹿正直にここでコードを書いてるんだ
94: 2020/10/24(土)17:18 ID:lO0DTzsg(1/2) AAS
main.py から hoge.py をimportするとき、 hoge.py が main.py と同じディレクトリにあることを
明示的に示したい場合はimportをどのように書くのが正しいんでしょうか。

import hoge で一応実行はできますが、vscode(Pylance)から認識できなくて警告が出ます。
from . import hoge とするとvscodeで認識されるようになるのですがpythonの実行がエラーになります。
もしかしたらvscodeがおかしいのかもしれませんが。
95: 2020/10/24(土)17:20 ID:+GevKgJx(1/2) AAS
from . import hoge
でももちろん OK

sys.path.append('.') の反対で sys.path の先頭に '.' が来るようにすれば良いんじゃね
96: 2020/10/24(土)17:21 ID:+GevKgJx(2/2) AAS
あと
main.py のディレクトリに
__init__.py
を造る
97: 2020/10/24(土)21:32 ID:d1F6LvKA(1) AAS
> お前は毎朝起きるたびに俺に負けたことを思い出すよ^^

あー、ホンッとに思い出すなあ(笑)
キチガイの嘘つきの低レベルFランの、
朝鮮ゴキブリBot君は、
チョン独特の「なにもできないけど俺のほうがジャップより偉い!」的な
ことはよーくわかったよ。
ホントなにもできない朝鮮ゴキブリBot君!

クソチョンw

Pythonさえろくにできないバカチョンのくせに
できるとほざくクソチョンw
省2
98
(1): 2020/10/24(土)22:17 ID:lO0DTzsg(2/2) AAS
ありがとうございます。
どうも from . の相対指定は __main__ からは使えないようですね。
なんでvscodeは import hoge だと見つけてくれないんだろう。
99
(3): 2020/10/25(日)10:06 ID:yMGC2owQ(1/8) AAS
配列を回転させるにはどういうロジックを使うんでしょうか?
テトリミノです
これを
var mino = [
[1,0,0,0],
[1,1,1,0],
[0,0,0,0]
]

var mino = [
[0,0,0,1],
省15
100
(1): 2020/10/25(日)10:14 ID:ems4w7oQ(1/4) AAS
AA省
1-
あと 883 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.249s*