X



くだすれPython(超初心者用) その36

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
垢版 |
2018/01/01(月) 20:18:42.82ID:iOcRvNll
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。

エラーを解決したいときはエラー表示や環境(バージョン/IDE or command line)を略さずに書き込んで下さい。
騙りが頻発しています。質問する方は一時的なトリップをつけることを検討して下さい。
次スレは >>985 辺りで

前スレ
くだすれPython(超初心者用) その35
http://mevius.5ch.net/test/read.cgi/tech/1496411341/
VIPQ2_EXTDAT: checked:default:1000:512:----: EXT was configured
0003デフォルトの名無しさん
垢版 |
2018/01/02(火) 13:25:06.82ID:Y/4ObyK1
test
0005遊園地
垢版 |
2018/01/02(火) 17:37:19.22ID:aDk8COb7
ブレークスルーではなくブレークダウンだったから。
0006遊園地
垢版 |
2018/01/02(火) 17:40:33.65ID:aDk8COb7
「意見は論理的な考えによって形作られ,客観的な考え方が唯一の考え方」で有る。
0008デフォルトの名無しさん
垢版 |
2018/01/04(木) 12:30:44.63ID:o7CttU7P
2018年01月03日 11時16分00秒
Intelのプロセッサチップに根本的な設計上の欠陥が発覚、各OSにアップデートの必要性
http://gigazine.net/news/20180103-intel-processor-design-flaw/

ここ10年間に製造されたIntelのプロセッサに、設計上の欠陥が見つかりました。
最悪の場合、パスワードやログインキー、
キャッシュファイルなどが格納されたカーネルメモリーの内容を読み取られる恐れが
あるとのことなのですが、Intel x86ハードウェアに存在する欠陥のため、
マイクロコードアップデートでは対応不可能で、
各OSがソフトウェアレベルで修正をかけるか、
バグのない新たなプロセッサを導入する必要があるとのこと。

このバグは、データベースアプリケーションから
ウェブブラウザのJavaScriptのようなものまで含めた普通のユーザープログラムでも、
保護されたカーネルメモリーをある程度まで認識できるというもの。

カーネルメモリーにはパスワード、ログインキー、
ディスクからキャッシュされたファイルなど、秘密にしておくべき情報も格納されているため、
通常はユーザープロセスやユーザープログラムからは隠された状態になっていますが、
欠陥が存在することにより、
ブラウザで実行中のJavaScriptや共有パブリッククラウドサーバー上で実行されているマルウェアによって情報を盗み見られる恐れが出てきます。

「python sweetness」によれば、影響は仮想メモリを実装している
現代のすべてのCPUアーキテクチャに及び、完全に解決するにはハードウェアの変更が必要になるとのこと。
0009デフォルトの名無しさん
垢版 |
2018/01/04(木) 19:42:50.88ID:53E7Fk1q
tkinterって使いみちあんのかね?
メンテするだけの価値ないしお荷物だろ
捨てちまえよ!
0011デフォルトの名無しさん
垢版 |
2018/01/06(土) 11:37:52.71ID:HbY4/bGY
WSL+X+GTK
0013デフォルトの名無しさん
垢版 |
2018/01/06(土) 22:46:52.95ID:/VYNmAh6
ttps://www.pythonweb.jp/install/install/index1.html
これに沿ってPython 3.6.4 Windows x86-64 executable installer(windows10)
をインストール完了させました
早速メモ帳を開いて「print('hello python!')」と記入して
「sample.py」と名前をつけて保存

本体を起動させ「python sample.py」と入力すると
File"<stdin>,line 1
python sample.py
SyntaxError:invalid syntax
と表記され、出力してくれません
助けてください
0018デフォルトの名無しさん
垢版 |
2018/01/07(日) 12:28:09.87ID:S38kpWyE
>本体を起動させ「python sample.py」と入力

本体っつってんだろ
0020デフォルトの名無しさん
垢版 |
2018/01/09(火) 09:43:51.54ID:7TNqNH1F
本当の初心者です

1、パイソンは他の言語を学ばず直接覚えることはできますか?
2、数学の知識はどれくらいまで必要ですか?(微積分すらできない)
3、数学も分からない状態でパイソンだけ学習した場合、仕事はありますか?
0021デフォルトの名無しさん
垢版 |
2018/01/09(火) 09:44:07.85ID:7TNqNH1F
あと独学だとどれくらいで習得可能かも教えてください
0022デフォルトの名無しさん
垢版 |
2018/01/09(火) 10:45:38.03ID:EYd6rKQN
>>20
真面目に答えてやるか

1、はじめて覚えるための言語なんてそもそもありません。Pythonは変な書き方が出来難いので初心者にはおすすめです。
2、Pythonで何をやりたいかによります。必要になれば勉強すればいいです。
3、Pythonに触れてみて、書いてみて楽しくなければお話しになりません。仕事のために覚えるなんてモチベーションが続きません。
0023デフォルトの名無しさん
垢版 |
2018/01/09(火) 11:21:22.42ID:Q8Oi5xYk
pythonをやりたいのに数学に弱いとは一体・・・
統計関係に関わるんだからさ・・・
0024デフォルトの名無しさん
垢版 |
2018/01/09(火) 11:33:44.21ID:7TNqNH1F
高校数学レベルならなんとか分かります
大学数学が必要かどうかが心配なだけです
高校数学だけで学べるんですか?
0025デフォルトの名無しさん
垢版 |
2018/01/09(火) 12:29:12.99ID:hZWQBtrg
馬鹿には無理
0026デフォルトの名無しさん
垢版 |
2018/01/09(火) 12:38:12.48ID:k6ghs7nO
知識が無いのと勉強しないのは別物だしね。
勉強してダメならほかやった方がいいと思うよ
0028デフォルトの名無しさん
垢版 |
2018/01/09(火) 15:07:37.80ID:7TNqNH1F
>>27
うせやろ?
別のスレで情報工学マスターするには大学数学が必要と言われたが
そもそも機電系でも多分新しい数学分野でてくると思うが
0029デフォルトの名無しさん
垢版 |
2018/01/09(火) 17:21:22.63ID:sltW7mFZ
>>23
pythonで財務会計や管理会計や税務会計のソフトを書いたとしてもおかしくない。
0030デフォルトの名無しさん
垢版 |
2018/01/09(火) 19:27:20.67ID:7lOmzbTz
>>23
テキスト処理とか普通にやってるぞ
って言うか会社で使ってる範囲だと数学って言う感じは全くしない
0031デフォルトの名無しさん
垢版 |
2018/01/09(火) 21:18:31.14ID:TfXfj3hF
製造現場で製品検査すために測定器と通信したり、係員に検品経過を見せるために製品内で
HTTPサーバー動かしたりしたわ
HTTPサーバーのスクリプト20行ぐらいだったかな
003332
垢版 |
2018/01/09(火) 21:45:15.87ID:oH5KqnIn
コードが省略できません。 助けて貰えませんか?
def Sample03(xx):
__[pass if l.index(a[i])==l.index(b[i]) for i in range(xx)]
0039デフォルトの名無しさん
垢版 |
2018/01/10(水) 09:14:54.92ID:uWMTsG/V
おすすめのパソコンありますか?
macbookproを購入しようかと検討中のものです
0040デフォルトの名無しさん
垢版 |
2018/01/10(水) 13:22:40.35ID:7Twskh/5
スレチだけどmbpいいよ
winマシンだとレッツノートの高いやつくらいかな良いのは
ノートでそれ以上のスペック求めるとゲーミングに行っちゃう
0041デフォルトの名無しさん
垢版 |
2018/01/10(水) 15:28:15.44ID:uWMTsG/V
>>40
thx

mbpにする決心がついた
ただもう少しで2018年のが出そうなんだよなー
仕方ないか
0045デフォルトの名無しさん
垢版 |
2018/01/10(水) 16:58:49.46ID:uWMTsG/V
>>43
今使ってるPCはもう限界なので待つのは厳しい。。
新しいのがでるのは3月か6月ごろなようなので長い
0047デフォルトの名無しさん
垢版 |
2018/01/10(水) 18:13:19.35ID:XD3nGTcX
def test_func():
print('call test_func')

test_func()
をコマンドプロンプトから実行しようとすると

File "<stdin>", line 4
test_func()
^
SyntaxError: invalid syntax
>>>
って出るんだけどなんでですか?
0048デフォルトの名無しさん
垢版 |
2018/01/10(水) 18:19:00.03
目に見えない文字が入ってるから
最後の行とその上の空行も全部消してから書き直す
0050デフォルトの名無しさん
垢版 |
2018/01/13(土) 22:24:55.51ID:BAsP1Vyl
下記のような配列を作ってその中から条件を満たしているものの中で
価格が最大値のものを検索するということがしたいのです。

品目     条件     価格
りんご     OK     100  
みかん     OK     200
れもん     NG     300

1.この場合、配列は下記のようなリストを作ればよいのでしょうか?

list=[[りんご, OK, 100], [みかん, OK, 200], [れもん, NG, 300]]

2.上記1.のアプローチが正しいとして、上記リストにおいて、条件がOKのもので価格が一番高いものの
配列の番号(または品目)を取得する方法をどなたかお教えいただけないでしょうか。
(辞書でもリストでも何でも良いのでが上記の表のような配列の裁き方が検索しても見つけられず・・・)
0052デフォルトの名無しさん
垢版 |
2018/01/14(日) 01:00:13.30ID:rilCPocj
>>50
Pythonじゃなきゃダメ?
正直、データベースソフトでやるべき案件だと思う
どうしてもPythonでやるなら、内包表記を使ってリストから
条件に合う要素を抜き出して新しいリストを作り、データを絞り込んで行く

>>> a = [['りんご', 'OK', 100], ['みかん', 'OK', 200], ['れもん', 'NG', 300]]
>>> ok_list = [elem for elem in a if elem[1] == 'OK']
>>> ok_list
[['りんご', 'OK', 100], ['みかん', 'OK', 200]]
>>> max_price = max([elem[2] for elem in ok_list])
>>> max_price
200
>>> name = [elem[0] for elem in ok_list if elem[2] == max_price]
>>> name
['みかん']

あと、list=[[りんご, OK, 100], [みかん, OK, 200], [れもん, NG, 300]] と最初にあったが
変数名にlistなどのPythonに元からあるオブジェクト名そのまんまを使うのは避けよう
エラーの元になる
0053デフォルトの名無しさん
垢版 |
2018/01/14(日) 01:32:55.95ID:YcirJyIj
>>52
Pythonスレで Pythonじゃなきゃダメ? ってオイオイだろ
これなんか学校の課題って気がする

list=[["りんご", "OK", 100], ["みかん", "OK", 200], ["れもん", "NG", 300]]
l_OK = [item_OK for item_OK in filter(lambda list_item : list_item[1] == "OK", list)]
#l_OK = [item for item in list if item[1] == "OK"]
print( max(l_OK, key=(lambda item_OK: item_OK[2]) )[0] )
0054デフォルトの名無しさん
垢版 |
2018/01/14(日) 02:18:12.29ID:yVTJx4nd
pandas使え
005550です
垢版 |
2018/01/14(日) 08:27:28.43ID:krdFkWsl
50です。みなさんご回答ありがとうございます。

>>51
検索すると色々あるのですが分かりそうで分からず…。

>>52, >>53
ありがとうございます!いずれの方法でもできました。
一度条件で抽出してからmax使うのですね(そこに思い至りませんでした…)

>>54
後々触ってみたいとは思うのですが、この程度のデータなのでまずは基本的なことを知りたいと思いまして。
0056デフォルトの名無しさん
垢版 |
2018/01/14(日) 10:39:38.00ID:TwgO/caM
pandasのstr.containsとかって、真偽反転するとき“~”を付けるじゃないですか
この波線って、pythonの側のビット演算子ですか?
strアクセサ用のオプション記号?

x=1
tf=2 in x
print(~tf)
とかで試してみるとT/Fではなく数字が出てくるので、strアクセサ用の機能?
0057デフォルトの名無しさん
垢版 |
2018/01/14(日) 13:23:26.45ID:0mtDcMfe
>56
in を使うなら、x=[1]とするべきでは?
また、否定演算子は~でなくてnotを使うべき。
~は、ビット毎の反転をとる演算子。Trueは1、Falseは0とみなして計算されるはず。
0058デフォルトの名無しさん
垢版 |
2018/01/14(日) 14:50:25.95ID:79VwseEt
だれもそんな話はしてないぞ
0059デフォルトの名無しさん
垢版 |
2018/01/14(日) 15:32:15.53ID:DgdnagvN
>>50
もう解決してるみたいだけど
価格が0または正だと仮定していいなら
print(max(list, key=(lambda x: x[2] if x[1] == 'OK' else -1)))
とすれば要素の抽出とかはなくてもいける
ただし'OK'のものが一件もないと価格が'NG'のものを返すので注意が必要
006050
垢版 |
2018/01/14(日) 15:34:13.85ID:DgdnagvN
> 価格が'NG'のものを返す
価格じゃなくて条件だったわ
0061デフォルトの名無しさん
垢版 |
2018/01/14(日) 15:57:09.64ID:/4CphuTL
>>56
配列の番号(と品目)を取得するようにしたニダね

list=[["りんご", "OK", 100], ["みかん", "OK", 200], ["れもん", "NG", 300]]
dic_OK = {list_idx:list_item for list_idx,list_item in enumerate(list) if list_item[1] == 'OK'}
list_index = max( dic_OK, key=(lambda dkey: dic_OK[dkey][2]) )
print( 'List index:', list_index )
print( 'Item name:', list[list_index][0] )
0062デフォルトの名無しさん
垢版 |
2018/01/14(日) 16:27:06.07ID:/4CphuTL
>>59
ついでに、max()使うとOKフラグ付きの同じ最高価格の物が複数あると困ったニダになるからな
006350
垢版 |
2018/01/14(日) 16:31:48.67ID:DgdnagvN
よくよく考えたらmax()のキーにタプルを返すようにすれば
> 価格が0または正だと仮定していいなら
の制限は要らなかったな
print(max(list, key=(lambda x: ( x[1] == 'OK', x[2]))))
> ただし'OK'のものが一件もないと条件が'NG'のものを返すので注意が必要
の方はそのままだけど
0065デフォルトの名無しさん
垢版 |
2018/01/14(日) 17:34:08.11ID:CiqP7kj2
なぜ、後になるにつれてこうも劣化していくのか

>>52
>変数名にlistなどのPythonに元からあるオブジェクト名そのまんまを使うのは避けよう
その気持ちよくわかります
0066デフォルトの名無しさん
垢版 |
2018/01/14(日) 19:43:47.38ID:GEVmZqF5
print({1,2,3})

と実行すると

{1,2,3}

と出力されます。

s1 = {1,2,3}
s2 = {4,5,6}

print(str(s1) + " -> " + str(s2))

と実行しても

{1,2,3} -> {4,5,6}

とは出力されません。

{1,2,3} -> {4,5,6}

と出力するにはどうすればいいのでしょうか?
0068デフォルトの名無しさん
垢版 |
2018/01/14(日) 20:13:42.00ID:EtO+GVJz
>>67
欲しいのは、{1,2,3} -> {4,5,6} で
{1, 2, 3} -> {4, 5, 6} じゃいやぽ
だから、なんとかしてじゃないのか
0070デフォルトの名無しさん
垢版 |
2018/01/14(日) 21:01:00.84ID:rilCPocj
>>68
自分の環境(Windows7, Python3.6.3)では最初からスペースが入るからよくわからんね
質問者からの追加説明を待ちたい

>>> print({1,2,3})
{1, 2, 3}
0071デフォルトの名無しさん
垢版 |
2018/01/14(日) 21:30:58.89ID:0mtDcMfe
{}は、set
setは、順序を保持しない
順序を保持したいなら、[4,5,6]とlistを使うのがよい
0072デフォルトの名無しさん
垢版 |
2018/01/15(月) 16:27:23.26ID:oyJFiKwa
>>50-65
漏れは、色々な言語で、最大値を持つオブジェクトを取得する、方法を研究しているが、
最大値が複数ある場合に、簡単に取得できる方法は、どの言語にも無い!

どの言語でも、最大値は1つであると、仮定されているから

例えば、Ruby のminmax。
最大・最小値が複数ある場合は、どの要素が取得できるかは、不定です!
0073デフォルトの名無しさん
垢版 |
2018/01/15(月) 16:57:20.16
C#のリスト型.Max関数は最大値そのものを返す
んでWhereメソッドでその最大値を持つ要素を抽出する
0074デフォルトの名無しさん
垢版 |
2018/01/15(月) 20:04:38.28ID:dgT2VGvQ
>>72
> 最大値が複数ある場合に、簡単に取得できる方法は、どの言語にも無い!
>>73 もしくは t-sql で rank() とか使うとかかな
0075デフォルトの名無しさん
垢版 |
2018/01/15(月) 20:20:13.07ID:uVak3BOk
>>55
>一度条件で抽出してからmax使うのですね
こんなこと(条件を満たすもの全て抽出)はしないで俺様関数を作って
俺様関数中で条件を満たすものピックアップしながらmaxを探すとかするんじゃないのか
0076デフォルトの名無しさん
垢版 |
2018/01/15(月) 20:27:35.79ID:uVak3BOk
>>74
最大値が複数ある場合に、標準関数で簡単に取得できる方法がないなら
自分で望みのことする関数なんかを作れだろうな
0077遊園地 ◆ExGQrDul2E
垢版 |
2018/01/16(火) 01:25:21.93ID:/gUVmc1B
最大値が複数有る時にmax要素を含むモノを返す処理
俺にも教えて。

l=[1,2,2,3,4,5,5,7,8,9,9]

import collections
x=collections.Counter(l)
print(x)
0078遊園地 ◆ExGQrDul2E
垢版 |
2018/01/16(火) 01:36:02.64ID:/gUVmc1B
どうすれば、いいんでちゅかぁ?wwwwwwwwww

 ぶひいいいいいいいいいいwwwww ┌(_Д_┌ )┐ ┌(_Д_┌ )┐


from collections import Counter
print( Counter('abracadabra').most_common(3) )


cnt = Counter()
for word in ['red', 'blue', 'red', 'green', 'blue', 'blue']:
cnt[word] += 1
print(cnt)



あぁ? ああああああああああああ あばばばばばばばばばあwwwww
0079遊園地 ◆ExGQrDul2E
垢版 |
2018/01/16(火) 03:20:20.16ID:/gUVmc1B
答え合わせのお時間でチュよぉおおおおおwww

 ぶひいいいいいいいいいいwwwww ┌(_Д_┌ )┐ ┌(_Д_┌ )┐


import collections

l='abbabacccddeee'
r = collections.Counter(l)
print (r.most_common(2))#取り出す個数wwwwwww


あああああああああああああーーーーーーーーーーwwwwwwwww

 取り出す個数を求めるの忘れて待ちたぁああああああwwwwwwww
0080遊園地 ◆ExGQrDul2E
垢版 |
2018/01/16(火) 04:05:37.35ID:/gUVmc1B
はいっ! はいっ!!  

「ハイ! ハイ!」  「ハイ! ハイ!」

ぶひいいいいいいいいいいwwwww

  「アイィィィ!ポイ!ポイィィィ!」

「んっ! 」 「んっ!」

35歳 「あっ。あっああ。。。」 「あっ。あっああ。。。」

    遊園地「ぶひいいいいいいいいいいwwwww」

ぬーぷ 「冬の大空に降り注ぐ彗星」


35歳&ぬーぷ&遊園地「 はいっ! はいっ!! 」

 「ぶひいいいいいいいいいいwwwww」 ( ゚д゚ )クワッ!!  ヘ(゚∀゚ヘ)アヒャ ┌(_Д_┌ )┐
0083デフォルトの名無しさん
垢版 |
2018/01/16(火) 13:38:54.40ID:1yOH1J8J
Ruby で作った

scores = [1,2,9,2,3,9,7]

results = scores.each_with_object([]).with_index do |(score, ary), i|
if ary.empty? || ary[0][0] == score
ary << [score, i]
elsif ary[0][0] < score
ary.clear
ary << [score, i]
end
end

results.each do |item|
puts "score: #{item[0]}, index: #{item[1]}"
end

出力
score: 9, index: 2
score: 9, index: 5
0084遊園地 ◆ExGQrDul2E
垢版 |
2018/01/16(火) 15:50:10.04ID:/gUVmc1B
どうしても、言いたい事が有るので、聞いて下さい。

 「氣持ちいぃいいいいwwwwいいぃぃいんぽおおおおおおおおおおおwwwww」



>>83
数値のmax要素を取得してるから、もっとも多い要素の複数を返す。
と言う、仕様には使えない。

多い要素を取得のハズが数値MAX取得でNG
https://ideone.com/Cj8JYJ

試験データ型
scores = [1,2,9,2,3,9,7,3,3,2]

返り値
要素 2,3
index 1,3,9 4,7,8
0085遊園地 ◆ExGQrDul2E
垢版 |
2018/01/16(火) 15:57:30.63ID:/gUVmc1B
正規表現で実装する方が良いかも。

   大丈夫だwっw 俺より凄い奴が出て来て助言してくれるぞwww

ぶひいいいいいいいいいいwwwww ┌(_Д_┌ )┐
0086デフォルトの名無しさん
垢版 |
2018/01/16(火) 16:20:42.45ID:qp2ox4Ew
>>78
[('a', 5), ('b', 2), ('r', 2)]
Traceback (most recent call last):
File "C:/Users/banbarori5/myscript.py", line 7, in <module>
cut[word] += 1
NameError: name 'cut' is not defined
0087デフォルトの名無しさん
垢版 |
2018/01/16(火) 16:25:25.03ID:ANYFrcmB
まずmaxを求めて
次にmaxと一致するものをリスト内包で抜き出すのが
Python流の思想
同時にやろうとするのはC++の発想なので違う
データベースの副問い合わせみたいなもんだな
0089デフォルトの名無しさん
垢版 |
2018/01/16(火) 18:45:08.51ID:1yOH1J8J
>>83
のやり方なら、全要素を1回の走査で済むけど、バグる可能性が高くなるから、

一旦、最大値を求めてから、改めてその最大値を使っている要素を、探した方が良さそう。
ただし、このやり方では、2回の走査になる
0090遊園地 ◆ExGQrDul2E
垢版 |
2018/01/16(火) 19:06:05.28ID:/gUVmc1B
取り敢えず、動くモノはできた。

誰か 整形 はよぉおおおおおおおおおおおwwwwwwwww

 https://ideone.com/nAscvc

もしくはぁああああwwww  誰か書き直してぇええええええええ
0091遊園地 ◆ExGQrDul2E
垢版 |
2018/01/16(火) 19:30:01.48ID:/gUVmc1B
くだすれPython(超初心者用) その33©2ch.net

914 :デフォルトの名無しさん:2017/05/24(水) 17:14:04.97 ID:rw+7fc+A
>>913
雪風は人間初心者だろ?死ねよ


俺を挑発した奴www 出てこいコノヤローーーーwwww
0093遊園地 ◆ExGQrDul2E
垢版 |
2018/01/16(火) 20:14:53.61ID:/gUVmc1B
1.最大値が複数有る時にmax要素を含むモノを全て返す処理
2.要素数が多いモノをindex付きで、全て返す


2のデータ
[1,2,9,2,3,9,7,3,3,2]

2の望む出力
{2:[1,3,9], 3:[4,7,8]}


1のデータ
{2:[1,3,9], 3:[4,7,8],9:[2,5,9]}

1の望む出力
{2:[1,3,9], 9:[2,5,9]}


お願いします。





君とぉおおおおおおおおおおお ちゅーーーしたぁあああうぃいいwwwっw??

 あなーーーーたーーーがw0−−−−wwww 好きだからぁあらあらあぁあwww

NOnoooo のんぉおおのぉお とぉおおおおをおをおををっをwww
0094デフォルトの名無しさん
垢版 |
2018/01/16(火) 22:29:00.66ID:1yOH1J8J
Ruby で作った。
同じ数字でグループ化して、要素数が最大になったものを取得する

scores = [1,2,9,2,3,9,7,3,3,2]

groups = scores.group_by { |num| num }
max_item = groups.max_by { |num, ary| ary.length }

groups.select! { |num, ary| ary.length == max_item[1].length }
p groups

出力
{2=>[2, 2, 2], 3=>[3, 3, 3]}
009594
垢版 |
2018/01/16(火) 22:31:53.14ID:1yOH1J8J
94 は、間違い

インデックスが取得できていない
009694
垢版 |
2018/01/16(火) 23:50:04.19ID:1yOH1J8J
94 の続きに、以下を付け足して

results = groups.each_with_object({}) do |(num, ary), h|
scores.each_with_index do |num2, i|
if num == num2
if h[num]
h[num] <<= i
else
h[num] = [i]
end
end
end
end

p results

出力
{2=>[1, 3, 9], 3=>[4, 7, 8]}
009794
垢版 |
2018/01/17(水) 00:52:52.06ID:oOmqXI7v
Ruby で作った。
すべての配列を連結・平坦化して、最大値を探す。
その最大値を含むものだけを残す

groups = {2=>[1,3,9], 3=>[4,7,8],9=>[2,5,9]}

ary = groups.each_with_object([]) { |group, ary| ary << group }
max_num = ary.flatten!.max

results = groups.select {|key, ary| ary.include?(max_num) }
p results

結果
{2=>[1, 3, 9], 9=>[2, 5, 9]}
0098遊園地 ◆ExGQrDul2E
垢版 |
2018/01/17(水) 03:14:18.29ID:M6pIuyeF
Pythonのお勉強 Part55  

 スレッドで解答が有りました。


310 名前:デフォルトの名無しさん 2018/01/16(火) 22:18:39.43 ID:x5Aoa3gi
>>> #1のデータ
>>> d = {2:[1,3,9], 3:[4,7,8],8:[2,5,9]}
>>> max_value = max([max(value) for value in d.values()])
>>> [d.pop(key) if max_value not in value else None for key, value in d.copy().items()]
[None, [4, 7, 8], None]
>>> d
{2: [1, 3, 9], 8: [2, 5, 9]}
>>>
>>>
>>> #2のデータ
>>> from collections import defaultdict, Counter
>>> from itertools import compress
>>> l=[1,2,9,2,3,9,7,3,3,2]
>>> d = defaultdict(list)
>>> [d[value].append(idx) for idx, value in enumerate(l)]
[None, None, None, None, None, None, None, None, None, None]
>>> c = Counter(l)
>>> selector = [count == c.most_common(1)[0][1] for num, count in c.items()]
>>> dict(compress(d.items() , selector))
{2: [1, 3, 9], 3: [4, 7, 8]}
>>>
0099遊園地 ◆ExGQrDul2E
垢版 |
2018/01/17(水) 03:16:41.94ID:M6pIuyeF
質疑応答  回答 が 有りました?

 答えてくれて人に感謝ですぅううううwwwww ほわええええええ

「ほぇ? ほぇええええええええええええええええwwwww」
0100デフォルトの名無しさん
垢版 |
2018/01/17(水) 09:50:35.82ID:tGzDYIkw
リスト内の要素に指定した文字列が含まれるのを検出したいとき
F="ex"
L=["exe","zip","tex"]
for i in L:
if i in F
というような処理しか知らないんですが、普通はどうやるんでしょうか
0101デフォルトの名無しさん
垢版 |
2018/01/17(水) 10:29:50.20ID:bWxGsVYn
複数の環境でpythonを走らせるため、
if sys.version[0] == "2":
print "hoge"
else:
print("hoge")

というふうなコードを書いたのですが、python3で走らせようとしたら
SyntaxError: Missing parentheses in call to 'print'. Did you mean print(txt)?
と、実行時には無視されるはずのところで怒られます。どうすればよいでしょう.
0102デフォルトの名無しさん
垢版 |
2018/01/17(水) 11:00:53.63ID:puvPFdX2
>>101
syntaxエラーは実行時のエラーじゃなくて
コードを読み込むときに出るエラーだから実行時に無視されるところでも出ちゃうね
「インデントの数が間違ってる」とかと同じ

exec関数を使って
if sys.version[0] == "2":
__exec('print "hoge"')

とか考えてみた(ちょっと強引な気もするけど)

多分ちゃんとしたやり方はimport __future__で
python3の機能をpython2でも使えるようにするもんだと思うけどね
0103デフォルトの名無しさん
垢版 |
2018/01/17(水) 11:13:56.25ID:puvPFdX2
>>100
別にそのやり方でも問題ないと思うけど
リスト内包表記を使うやり方もある

[i for i in L if F in i]

って感じで

この場合「Lに含まれるアイテムiのうち、Fという言葉が含まれるものだけでリストを作る」って意味になり
["exe","tex"]っていうリストを一行で作ることができるから
検出した文字列に何か操作したりしたいときは便利かもしれない
0104デフォルトの名無しさん
垢版 |
2018/01/17(水) 11:33:04.51ID:wKG3wA1V
i for i
0107デフォルトの名無しさん
垢版 |
2018/01/17(水) 17:06:57.48ID:Gaok5e8Q
音声ファイルを読み込んでそれのスペクトログラムを作りたいのですが
やり方を教えてください
0108デフォルトの名無しさん
垢版 |
2018/01/17(水) 17:54:25.88ID:Iu2MWvIi
概出
0109デフォルトの名無しさん
垢版 |
2018/01/17(水) 18:43:16.63ID:mMlmLaaw
百人一首をテキストベースで、上の句から一文字ずつ表示されるようなことは出来ますでしょうか?

例えば、
はなのいろは うつりなけりな いたずらに
という上の句がある場合、

はな
はなの
というようにごく短い間隔で表示される量が増えて行きます。

これがもし可能なら、この句の下の句は、
わがみよにふる ながめせしまに
なのですが、waとローマ字入力すると、OKで次の句に進むようにしたいです。
本当なら間違いの時の処理も考えたいのですが、一種の暗記カード的利用のためのプログラムを作ってみたいと思っています。
どなたかご教示いただけるとありがたく存じます。
0110デフォルトの名無しさん
垢版 |
2018/01/17(水) 19:47:01.24ID:Bm/HPyIQ
x="とんかつ"
y="とんかつ(ヒレ)"
z=re.match(x,y)
これは期待通りの動作なんですが
x="とんかつ(ヒレ)"
y="とんかつ(ヒレ)(大盛り)"
z=re.match(x,y)
だとNoneになります。どうしてでしょうか?
0112遊園地 ◆ExGQrDul2E
垢版 |
2018/01/17(水) 20:04:45.54ID:L6sUceLv
re.match(x,y)
文字列の先頭で正規表現とマッチするか判定します。
多分rと() 括弧の違い

import re

z=re.match(r"とんかつ","とんかつ(藍蘭島)")

print(z)

if z:
print (z.group())
0113デフォルトの名無しさん
垢版 |
2018/01/17(水) 20:05:13.31ID:L6sUceLv
<_sre.SRE_Match object; span=(0, 4), match='とんかつ'>
とんかつ
0115デフォルトの名無しさん
垢版 |
2018/01/17(水) 20:10:05.14ID:aINj1+iA
>>110
半角括弧は正規表現のグループ化構成体。従って2番目のxをre.matchで使うと
単に「とんかつヒレ」を探し、ヒレの部分をグループに突っ込もうとする
正規表現の特殊文字をマッチさせるならバックスラッシュ(円記号\)でエスケープ
0116デフォルトの名無しさん
垢版 |
2018/01/17(水) 20:14:53.84ID:L6sUceLv
import re
x="とんかつ(ヒレ)"
y="とんかつ(ヒレ)(大盛り)"

print (re.match(x,y) )
0117遊園地 ◆ExGQrDul2E
垢版 |
2018/01/17(水) 20:38:40.62ID:L6sUceLv
今日からお前は富士山だ!!

 おちんぽ おちんちんがぁああああああああああ  おちんちんびーーーーむ!!!
0118デフォルトの名無しさん
垢版 |
2018/01/17(水) 21:17:58.09ID:Bm/HPyIQ
>>115
なるほど、よくわかりました
実は検索文字はジェネレーターでたくさん出てくるため状況に応じてエスケープ記号を挿入できないっぽかったので
map(re.escape,テキストリスト)して上手くいきました
どもでした
0119デフォルトの名無しさん
垢版 |
2018/01/18(木) 02:55:54.46ID:MkqD6lAI
>>109
北斗の拳でぐぐれ
0121デフォルトの名無しさん
垢版 |
2018/01/19(金) 01:15:22.49ID:PdcBS2Hw
#!/usr/bin/python
# -*- coding: utf-8 -*-

html_body = """
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-JP">
</head>
<body>
<h1>漢字かなカナ</h1>
</body>
</html>
"""
print(html_body)

こんな感じでHTMLを出力したいのですが文字コードがshift_jisになってしまって文字化けします。
<meta charset="utf-8">でも同様です。
どうすれば正常に表示できますか?よろしくお願いします。
0123遊園地 ◆ExGQrDul2E
垢版 |
2018/01/19(金) 03:36:31.72ID:sKGPJBpd
<meta charset="EUC-JP">   を

<meta charset="UTF-8">    に変更だよーーーんwww
0124デフォルトの名無しさん
垢版 |
2018/01/19(金) 06:20:42.93ID:zZu5/UvX
sys.stdoutを設定すれば?
0125デフォルトの名無しさん
垢版 |
2018/01/19(金) 06:42:17.46ID:GujNruCj
ああ!ソレじゃないかな、Python3の標準出力はプラットフォームのロケールに依存するので
sys.stdout = io.TextIOWrapper(sys.stdout.detach(), 'EUC-JP')
みたいな事をしないとそれ以外の文字コードで出力できない。保存コードがSJISな可能性もあるけど
0126デフォルトの名無しさん
垢版 |
2018/01/19(金) 10:40:56.08ID:A90894OZ
>Python3の標準出力はプラットフォームのロケールに依存するので
そうでもない
0127デフォルトの名無しさん
垢版 |
2018/01/19(金) 11:04:43.09ID:fouJmeJy
>>121
windowsのメモ帳使ってたりしないよな?
テキストエディターの設定でutf-8に変えられないかな?
0129デフォルトの名無しさん
垢版 |
2018/01/19(金) 18:22:13.31ID:9YVUMHwh
こんにちは
「初項n、公差mの等差数列をスペース区切りで表示するプログラムを記述しなさい」が解けません
m,n=[int(i) for i in input().split()]
for i in range(10):
if i==10:
print(m+n*i, end='\n')
else
print(m+n*i, end=' ')
で解答そのものは合ってるんですけどNGが出るんですよね…
0130愛知人
垢版 |
2018/01/19(金) 18:26:00.34ID:QV4koCPF
正解の出力うp
0131愛知人
垢版 |
2018/01/19(金) 18:33:22.63ID:QV4koCPF
range(10)→[0,1,2,3,4,5,6,7,8,9]
0134デフォルトの名無しさん
垢版 |
2018/01/19(金) 21:23:44.01ID:HbIFkzGZ
「qutebrowser」というソフトをインストールする際
$ tox -e mkvenv-pypi
というコマンドで
InterpreterNotFound: python3
というエラーが出てしまいます。
pathも通しておりpython --versionもできます。
「qutebrowser」のバグであればisueに書くのですが
自分のpythonの知識不足が原因の可能性が高いのでこちらで質問させていただきました
よろしくお願いします

OS:windows7 64bit
python:3.7.0a4 64bit
0135デフォルトの名無しさん
垢版 |
2018/01/20(土) 01:03:22.83ID:81nWAu9S
>>122-128
>>121 です。
#!/usr/bin/python
# -*- coding: EUC-JP -*-
import sys
import io
sys.stdout = io.TextIOWrapper(sys.stdout.detach(), 'EUC-JP')
~~~
<meta charset="EUC-JP">
<h1>漢字かなカナ</h1> # EUC-JP文字列
~~~
としたところ、表示に成功いたしました。
ありがとうございました。
0136デフォルトの名無しさん
垢版 |
2018/01/20(土) 01:28:40.70ID:6q5j1Hcg
>pathも通しており、python --versionもできます
それは、python というコマンドの場所がわかるだけだろ

>InterpreterNotFound: python3 というエラーが出てしまいます。
python3 というコマンドの場所がわかるのか?

「python3 --version」って、打てるか?
0137134
垢版 |
2018/01/20(土) 06:46:56.76ID:RL0/RrMv
Make sure your python3 is Python 3.5 or newerとあったのでpythonのver3.~を指しているか
python内部のpython3というコマンドかバイナリを指していると予想したのですが
どちらにしても見つからないならpath関係の可能性も高いかと思い記載しました

tox.ini等の書き換えが必要なのかもっと初歩的な間違いをしているのかは分かりませんが
色々試してもうまく行かず躓いています...
0139デフォルトの名無しさん
垢版 |
2018/01/20(土) 13:51:14.19ID:zS6yqytM
pythonを趣味で始めようとしてます
おすすめの開発環境を教えて下さい
CではVS2017、Javaではeclipseを使ってました
0140愛知人
垢版 |
2018/01/20(土) 13:52:44.21ID:+yb3sEoQ
VSCode
0143遊園地 ◆ExGQrDul2E
垢版 |
2018/01/20(土) 17:42:59.11ID:1ejhfD4c
おちんぽーーー!! おちんぽーーー!!! おちんぽっぽぉおおお!!!???

 ぶひいいいいいいいいいいwwwww ∠( ゚д゚)/


最近はどのスレを荒らすの分からなく成って来た。
0144デフォルトの名無しさん
垢版 |
2018/01/20(土) 21:06:58.08ID:xBZ2/RS5
C#からIronPython使ってpythonのプログラムを起動しようとしてるんだが
No module named cv2
ってエラーが出て起動できない
普通にコマンドプロンプトでpythonプログラムのほうは起動するんだけど
どこにcv2を置いたらいいのか教えて偉い人
0145遊園地 ◆ExGQrDul2E
垢版 |
2018/01/20(土) 22:02:42.22ID:1ejhfD4c
右クリック で Pythonパッケージをインストール って出ない?
0146遊園地 ◆ExGQrDul2E
垢版 |
2018/01/20(土) 22:06:57.78ID:1ejhfD4c
出ないなら、仮想環境を追加する必要が有るかも知れない。
0148愛知人
垢版 |
2018/01/21(日) 22:51:23.74ID:TYCBS/Jo
無理サイトで十分
0150愛知人
垢版 |
2018/01/21(日) 22:57:08.16ID:TYCBS/Jo
どこでも同じ
0153デフォルトの名無しさん
垢版 |
2018/01/22(月) 06:41:00.22ID:1d4s07YI
>>148
馬鹿には無料
0155デフォルトの名無しさん
垢版 |
2018/01/23(火) 01:27:18.63ID:KzFECrwP
>>154
並みの知能の奴ならそうだろうが、5chのpythonスレに来る連中は長年のゆとり教育で知能が未発達の知的障害レベルだらけで、
そんな俺らにはそれは難易度が高すぎるだろ。
とりあえず知的障害レベルの俺らは超底辺向けの
https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-0001-introduction-to-computer-science-and-programming-in-python-fall-2016/lecture-videos/
をびしっと受けてから、その本を読むのが良いだろ
0156デフォルトの名無しさん
垢版 |
2018/01/23(火) 13:29:25.55ID:CDVCaOOu
たのしいRuby 第5版、2016

この本でも、説明が無いとか、難しすぎるとか、初心者向けでは無いとか、
書評にはめちゃくちゃ書いてあるw

ゆとり教育で、頭のおかしい奴が多い

OS の事を知らない奴が、プログラミング言語のせいにするなよ。
たのしいRuby・みんなのPython は、あくまでもプログラミング言語の本

コンピューターの知識は、勉強していない奴が悪い

だから最近の会社では、プログラマーの募集はしない。
コンピューターリテラシーのある人しか採用しない
0157デフォルトの名無しさん
垢版 |
2018/01/23(火) 14:34:54.37ID:a1bd/qZN
>>155
GJ
0158デフォルトの名無しさん
垢版 |
2018/01/23(火) 17:31:49.62ID:FV2EyPwQ
指定した平均値になるように、指定した範囲の乱数を出力するモジュールみたいなのありませんでしたっけ?
0159愛知人
垢版 |
2018/01/23(火) 17:39:52.94ID:n+XhUxgS
>>158
乱数の範囲の中央がその平均になるようにすればいい
0160デフォルトの名無しさん
垢版 |
2018/01/23(火) 17:51:22.43ID:a1bd/qZN
>>158
normal
0161デフォルトの名無しさん
垢版 |
2018/01/23(火) 22:32:12.85ID:iT8esRya
PyCharm使ってPython始めようとしてるんですが日本語化がよくわかりません
Win7です
あと皆様のおすすめのIDEかエディタはありますか?
0162デフォルトの名無しさん
垢版 |
2018/01/23(火) 23:06:12.83ID:Y9oufIFh
pythonとは直接関係無いんですが、機械学習がらみで質問があります

https://drive.google.com/file/d/1m5SUUJ6TWPsAgAQXQPh1Ui19rKqOGnAW

これ3万件の体重のnp.arrayです。
体重なんで正規分布するのかなと思ったんですが、シャピロ検定通りません
詳しいかたにお聞きしたいんですが、このデータは正規分布じゃないんですか?
0163デフォルトの名無しさん
垢版 |
2018/01/23(火) 23:28:21.23ID:k/8DZi7L
>162
データが3万件もあれば、正規分布との違いが、統計的に有意に現われるのだと思うよ

体重データは負の値を取り得ないけど、正規分布にはそんな制約はないよね。
なので、体重データの分布は、正規分布とは異なるに決まっている。

けれど、正規分布に従うとすると、色々便利なことがある。
また、データ数が少ないうちは、体重データが正規分布に従うとして扱っても、そんなに困らない(違いを検出できない)。
正規性の検定は、本当は違う体重データの分布を、正規分布とみなしても許してもらえるよね、、という言い訳。
0164デフォルトの名無しさん
垢版 |
2018/01/24(水) 00:31:07.51ID:hWz6wUdN
>>162
どんな分布か興味あるんだけどそれをグラフにしたのない?
初心者レベルあれば分布グラフ生成+色々な統計値算出のPythonコードは余裕でかけるんだろうが
超初心者(超底辺)レベルの俺ではできないorz
0165デフォルトの名無しさん
垢版 |
2018/01/24(水) 10:57:53.60ID:4kMWbC/A
>>163
なるほど
500件くらいをランダム抽出してzscore処理してテストにかけたら通りました(kstestも)

とりあえず全容が既知なデータのヒストグラムが単峰なら標準化すっぞの精神でやってみます
0168遊園地 ◆ExGQrDul2E
垢版 |
2018/01/24(水) 14:02:39.55ID:FoNcQYJD
あほ草www

あほがwカッコつけてやらない言い訳してて草www

興味有るなら、「俺にはできないww○○ないの?」とか、言わずに調べレバーwwww
0171遊園地 ◆ExGQrDul2E
垢版 |
2018/01/24(水) 15:44:22.97ID:FoNcQYJD
「ほえーー!!」    ( ゚д゚)「ほえーーーー!!」

 ムキになってwww 問題を先送りwww

wwwお前は一生できないwww

 ぶひいいいいいいいいいいwwwww ┌(_Д_┌ )┐
0173デフォルトの名無しさん
垢版 |
2018/01/24(水) 22:52:45.22ID:imY+jhW1
データは見てないけど、上限下限があるので正規確率プロット上でtan(x)みたいな形になるはず。正規分布ならどこまでも直線。
ちな、厚労省の統計情報で男性の25歳くらいだと平均66kg 標準偏差9kg くらい
30000でざっくり4σなので±36kg、102kgはいそうだけど30kgはまずいないだろう。下は-1σあたりからガクッと下がるんじゃないかな。
0174遊園地
垢版 |
2018/01/24(水) 23:11:52.45ID:FoNcQYJD
超底辺レベルだからwww

  分布グラフも体重統計データも作れないとかww

カス杉www

 頭が可哀想wwww

一行文章投稿する文字数でggったら出て来るのにwww

 無能はコピペもすらできないwwww

脳みそがスカスカでカッスカスのお前は算数からだwww
0175デフォルトの名無しさん
垢版 |
2018/01/24(水) 23:28:21.93ID:Rq+1kbsr
精神が超底辺の奴が居る
0176デフォルトの名無しさん
垢版 |
2018/01/25(木) 02:15:31.25ID:KWt8t+zY
裸にして隔離だな
0178デフォルトの名無しさん
垢版 |
2018/01/27(土) 17:53:11.51ID:UnKdxyA0
MACでPycharmをインストールしてコードを書こうとして躓いてしまったので教えてください。
ネットからコードをコピーして貼り付けとかで色々勉強しているのですが、
バックスペースで文字を消そうとしても消えず、カーソル位置が一つ前に戻り、
また、エンターキーでも次の行にカーソル位置が進むだけです。

これは、そういう仕様なのでしょうか

よろしくお願いいたします
0180デフォルトの名無しさん
垢版 |
2018/01/27(土) 18:11:27.24ID:+Y//GbrG
Anaconda
で開発環境を整えようとしたんですが
Anacondaのサイトに行くと404がでます
もしかして既に閉鎖してます?
0181デフォルトの名無しさん
垢版 |
2018/01/28(日) 08:55:41.32ID:6EjFtDvJ
URLが変わってるとかでしょ
クールなURIは変化しないものだが、あいつらは馬鹿だからその辺が理解できていない
0184デフォルトの名無しさん
垢版 |
2018/01/28(日) 15:33:35.56ID:aMuw2L5j
>>182
>URLが変わってるとかでしょ
そんなことは全く思わないのが今の日本のPython入門者
そして、すぐに誰かにきくと
0185デフォルトの名無しさん
垢版 |
2018/01/28(日) 17:40:42.06ID:aljNVEZ8
matplotlibで下記のメッセージになってしまうのですけど、
どうしたらいいのでしょうか

return _show(*args, **kw)
TypeError: __call__() takes 1 positional argument but 2 were given
0187デフォルトの名無しさん
垢版 |
2018/01/28(日) 18:20:25.88ID:aljNVEZ8
>>186
ありがとうございます。
でもわかりませんでした。。。
0189遊園地 ◆ExGQrDul2E
垢版 |
2018/01/28(日) 19:23:38.45ID:FBU0Mxiw
TypeError:__call __()は1つの位置引数を取るが、2が与えられた
タイプ エラー こーーる!!
0190デフォルトの名無しさん
垢版 |
2018/01/29(月) 04:48:24.26ID:7znYjzbE
中学生のうちに英語はまじめにやっとけ
小学生なら許す
0191デフォルトの名無しさん
垢版 |
2018/01/29(月) 11:12:55.53ID:ijZgwjdS
スミマセン
python3使って3つの数の最大公約数求める方法が分かりません。。二つの数の最大公約数求めて、その結果ともう一つの値でまた最大公約数求めるというのはわかるのですが
0193デフォルトの名無しさん
垢版 |
2018/01/29(月) 12:14:13.64ID:ZoR+QJGB
まるちんこ死ね
0196デフォルトの名無しさん
垢版 |
2018/01/29(月) 13:25:43.81ID:ijZgwjdS
すみませんでした。def使ってなかっただけでした。解決しました。
0198デフォルトの名無しさん
垢版 |
2018/01/29(月) 22:23:48.29ID:81DQIK+r
>>188
>>189
>>190
ありがとうございます。
位置引数とか勉強してきます
0199デフォルトの名無しさん
垢版 |
2018/01/30(火) 17:55:14.21ID:OTL8jPh4
Python3で、任意の数Nまでの和を計算するプログラムのソースコードの作り方がわかりません。。
0201デフォルトの名無しさん
垢版 |
2018/01/30(火) 18:05:44.48ID:OTL8jPh4
>>199
すみません、ミスでした。Nまでの素数の和です。
0202愛知人
垢版 |
2018/01/30(火) 18:07:13.10
エラトステネスの篩のアルゴリズムで、見つけた素数をリストに追加、の部分を変数に足していくように変えるだけ
0204デフォルトの名無しさん
垢版 |
2018/01/30(火) 18:19:39.77ID:OTL8jPh4
>>202
>>203
出来ました!ありがとうございました!
0205デフォルトの名無しさん
垢版 |
2018/01/31(水) 02:20:42.73ID:f4BpNPs7
こんにちは
nにスペース区切りで距離が与えられる(例:11 km)ので、mm換算で表示してくださいという問題で、単位が外せなくて困っています。出力に単位は必要ありません。
どうしたら良いでしょうか?

入力例: 11 km
出力例: 110000
0206デフォルトの名無しさん
垢版 |
2018/01/31(水) 03:24:22.71ID:K+YvZ0kY
1 km = 1000 m = 1000000 mm

なのでは?

km 以外に mとか cm とかも入力に入ることがあるの?
0210デフォルトの名無しさん
垢版 |
2018/01/31(水) 12:15:43.54ID:gUa95v+e
anaconda の仮想環境について質問です。

仮想環境内でパッケージをインストールしたとします。
その後、その仮想環境を削除した場合、その仮想環境でインストールした
パッケージも削除されるのでしょうか?
0211デフォルトの名無しさん
垢版 |
2018/01/31(水) 12:17:55.38ID:gUa95v+e
仮想環境Aを作成。

いろいろと仮想環境内でいじる

仮想環境Aを削除。

こうすると、anaconda は仮想環境Aを作成する前と同一の状態に戻るのでしょうか?
0212デフォルトの名無しさん
垢版 |
2018/01/31(水) 13:23:33.75ID:Yyfhc83l
パッケージ次第としか言えない
例えば、パッケージがホームディレクトリなどに設定ファイルやキャッシュを作成した場合、仮想環境を削除しても消えないだろう
0213デフォルトの名無しさん
垢版 |
2018/02/01(木) 00:33:27.64ID:HAJWEq9t
>>209
ありがとうございます、書いてみます
しかし超初心者向けレベルなのでこんな難しいはずないのですが…作成側のミスでしょうか
0214デフォルトの名無しさん
垢版 |
2018/02/01(木) 03:30:00.36ID:QJNC8dyR
おまいは間違って産まれて来た子
0215デフォルトの名無しさん
垢版 |
2018/02/01(木) 12:34:41.05ID:3Q0Uh8hK
以下のコードでValueError: invalid literal for int() with base 10のエラーが発生します。リストの中に
10進数以外の“何か”が入っているから生じるエラーというところまではわかるのですが、それが何かが
わかりません。現在引っかかっているのは、3行目です。不思議なことに4行目が通るのがますます
謎です。ご指南よろしくお願いします。

for item in open("leavetime.txt", encoding="utf-8"):
h, m = item[:-1].split(":")
print(int(h)+2)
print(int(m)+3)


"leavetime.txt"の中身
19:41
22:25
19:31
20:09
21:51
23:06
20:33
17:47
17:56
23:20
17:23
0216デフォルトの名無しさん
垢版 |
2018/02/01(木) 12:57:56.35ID:JHgWZRDZ
>>213
それはいたずらにわかりづらく書いてある

nがリストとかで無い場合

cm=10
m=1000
km=1000000

num,unit=split(" ")

if unit=="km":
answer=num*km
elif unit=="m":
answer=num*m
elif unit=="cm":
answer=num*cm

print(answer)

これならわかるだしょ
ただ超初心者でも、このくらいまでは自力でたどり着きたい
0218デフォルトの名無しさん
垢版 |
2018/02/01(木) 16:02:18.39ID:JGfViH8X
>>215
そのコード何をしているのかはさっぱり不明だけど
ValueError...なんてエラー出ないけど
とりあえず
print(h)
print(m)
にして、表示してみるとか
0219デフォルトの名無しさん
垢版 |
2018/02/01(木) 16:39:29.34ID:dcxYy60t
trainXはnumpyのndarrayです。


↓この引数のリストの要素の意味は何ですか?
とくに最初の要素の-1と最後の要素の1は何ですか?
ドキュメントに載っていないような気がします。

trainX = trainX.reshape([-1, 28, 28, 1])

28×28の2次元配列に形状変更するらしいですが。
0220デフォルトの名無しさん
垢版 |
2018/02/01(木) 16:52:30.63ID:dcxYy60t
trainX = trainX.reshape([-1, 28, 28, 1])
trainX = trainX.reshape((-1, 28, 28, 1))

上の二つの式の違いは何でしょうか?
0221デフォルトの名無しさん
垢版 |
2018/02/01(木) 16:57:01.28ID:dcxYy60t
-1 のところの次元は自動で計算されるということですか?
0222愛知人
垢版 |
2018/02/01(木) 17:04:13.63
trainXの次元は?
0225デフォルトの名無しさん
垢版 |
2018/02/01(木) 17:14:41.63ID:0r+ZCyMd
>220

-1は関係なくね?
リストとタプルの違いでしかない
0226デフォルトの名無しさん
垢版 |
2018/02/01(木) 17:22:55.74ID:dcxYy60t
>>225

一つ目の質問が -1 の意味でしたが、おそらく >>221 の意味だろうと思いました。
最後要素の 1 は長さ 1 の配列という意味だと思いました。

二つ目の質問が reshape はタプルだけでなくリストも引数としてとるのかということです。
実行してみるとそのようでしたが、念のため確認したいと思いました。
ドキュメントにはタプルを引数としてとると書かれています。
0227デフォルトの名無しさん
垢版 |
2018/02/01(木) 17:51:37.80ID:0r+ZCyMd
気になるならこうしなさい
trainX = trainX.reshape(tuple([-1, 28, 28, 1]))
0228愛知人
垢版 |
2018/02/01(木) 18:29:06.85
>>226
ドキュメントにはintタプル or intsって書いてる
0229愛知人
垢版 |
2018/02/01(木) 18:33:48.72
そのリストの中身の数字は-1×28×28×1の配列に変換しろって意味
最後の1は無くても変わらん気がする
0230愛知人
垢版 |
2018/02/01(木) 18:34:17.98
-1は要素数に応じて自動的に決まる
0231215
垢版 |
2018/02/01(木) 19:16:15.61ID:3Q0Uh8hK
>>218
返信ありがとうございます。あれからいろいろ調べて分かったことがあったので報告します。
ずばり、原因はsplitしたリストの先頭の要素にBOMが入っていたから、でした。

いろいろあたってつまみ食い気味に呼んだので、間違っているかもしれませんが、どうやら
windowsではメモ帳でutf-8保存したときにBOMが入る仕様になっているらしく、一番最初の要素
をintにキャストするときに invalid literal for int() with base 10が発生するようです。これを回避
するためにはencoding="utf-8_sig"にすると、BOMをスキップしてくれるのだそうです。Macなどでは
デフォルトでBOM無しになっているらしく、windows特有の現象だったようです。とにかく、原因が
わかってよかったです。ありがとうございました。

ちなみに、このプログラムは以下のURLでpythonを勉強しているときに出てきたコードで、
残業時間を記録したtxtファイルから、総残業時間を求めよ、という課題でした。
http://giraffe.topaz.ne.jp/wiki/doku.php/py:python_curriculum
0232デフォルトの名無しさん
垢版 |
2018/02/01(木) 21:52:56.98ID:iw8YX/Ps
Windows のメモ帳を使っていけないのは、常識

BOMなしUTF-8(UTF-8N)で保存するのは、常識
0233デフォルトの名無しさん
垢版 |
2018/02/01(木) 22:27:52.76ID:ztyQSgLr
UTFなんぞを取り入れるから混乱する
日本はSJISで全てうまく行っていたのにどうしてこうなった
0236デフォルトの名無しさん
垢版 |
2018/02/02(金) 06:57:28.81ID:qMkVbe3j
>>233
テキストファイルが使いにくくなるようにMSやAppleがわざとやってる
0237デフォルトの名無しさん
垢版 |
2018/02/02(金) 07:52:54.50ID:sggyuymU
>>231
メモ帳はただちに窓から捨てて秀丸にしなさい
0238デフォルトの名無しさん
垢版 |
2018/02/02(金) 07:55:39.00ID:sggyuymU
>>233
システムロケールにcp932じゃなくてcp65001を
0239愛知人
垢版 |
2018/02/02(金) 08:25:52.08
>>236
なんのために?
0241デフォルトの名無しさん
垢版 |
2018/02/02(金) 14:54:42.87ID:IZOEihdO
>>238
そういえば、3.xの途中から、cp65001も定義されたんだよな。
以前はこんなの書いてたっけ…

def cp65001(name):
 if name.lower() == 'cp65001':
  return codecs.lookup('utf_8')
codecs.register(cp65001)
0242デフォルトの名無しさん
垢版 |
2018/02/02(金) 20:40:37.09ID:woVD/Zi7
>>215
BOMあってもなくても正常に動くようにするにはどうすれば良い?
encoding="utf-8"にutf-8だがBOM付の可能性もあるからよろしくってなんかを指定するとか?
0244デフォルトの名無しさん
垢版 |
2018/02/02(金) 21:51:51.36ID:kuVTnXto
>>243
わざわざコードまで作ってくれたのか、激感謝だな
結局、encoding=とかでちょいと指定すればOKにならないってことか
winではBOM付はよくあるからいたれりつくせりのPythonだとちょいと指定ば両方対応
できるかなと思ったんだがな.
出来ないとなると、俺判定でBOM付となったらBOM部分のスキップ処理も書かないといけないからな
0245デフォルトの名無しさん
垢版 |
2018/02/03(土) 00:34:28.67ID:7x/TAIpP
>>243が判定コード書いてくれたんで
>>215をBOMも対応するようにしてみた
utf8_file="leavetime.txt"
for item in open(utf8_file, encoding='utf_8_sig' if contains_bom(utf8_file) else 'utf_8'):
h, m = item.rstrip().split(":")
print(int(h))
print(int(m))
0246デフォルトの名無しさん
垢版 |
2018/02/03(土) 05:06:07.81ID:pNC8Ba1v
BOMチェックよりコインチェック
0247デフォルトの名無しさん
垢版 |
2018/02/03(土) 07:37:05.14ID:t4e4FmlL
Pythonの本はあらかた購入しているのだけど、デコレータがどうしても理解できない
いや説明はわかるのだが、それが何の役に立つのか理解できない
例えば以下のコードを見せられても、それが何?という感想しか出てこない
理解できないものは無視すればいいんだろうけど、Pythonドキュメントのサンプルコードに
デコレータを使っている箇所(@classmethod等)がけっこうあるため、そうも行かない
誰かデコレータについてその存在意義と有用性を教えてくれないか

----------------------
@decorate
def target():
print('running target()')

これは次と等価です

def target():
print('running target()')

target = decorate(target)
----------------------
0248デフォルトの名無しさん
垢版 |
2018/02/03(土) 09:32:41.09ID:qWVkS+Es
>>247
SQL の update とかで
デコレータ版だとトランザクションや排他処理してくれるってのがあって便利だった
0250デフォルトの名無しさん
垢版 |
2018/02/03(土) 12:20:01.23ID:5RbTAhEw
>>247
デコレーターって「高階関数の便利な使い方」って感じのものだから
根本的にはmap関数とか調べたほうがピンとくると思う。

pythonでは「関数を引数にとり、関数を返す関数」っていうのを文法上作ることができて、
「なら関数を受け取って改造して返す関数を作ってもいいよね」っていう発想が生まれて
「これ便利だから簡単に使えるようにしよう」って出来たのが@を使うデコレーター記法。

使い道としては、関数にちょっとした追加機能をつけて改造するようなものが多いと思う。
ログを取ったり、規定の文字数をオーバーしてたらエラーを返すようにしたり、
ただの文字列を返す関数をhtmlタグ付きの文字列を返すように改造したり。
0251sage
垢版 |
2018/02/03(土) 20:49:35.33ID:ueJRcD/G
https://qiita.com/yyoshiaki/items/b545676aa1223e82da0e
を読んで以下を試したのですが、
list3, list4の出力が正しい内容として、正規表現を使わずに簡潔に書く方法が
あれば教えてください。
内包表記やスライスの使い方も完全に理解できていない自覚はあるのですが、
list4でfindを2回呼んでいるのが冗長です。

print("文字列より最初の'-1'のみ削除")
list = ['1011-1-11', '1111-1-01', '1112-1-02', '1112-2-02', '1113-1-03', '1114-1-2-1-04', '1115-1-1-05']
print('元データ:\t' + str(list))

list2 = [x.strip('-1') for x in list]
print('strip:(NG)\t' + str(list2))

list3 =[x.replace('-1', '', 1) for x in list]
print('replace:(OK)\t' + str(list3))

#list4 = [x[:x.find('-1')]+x[x.find('-1')+2:] if x.find('-1') >= 0 else x for x in list]
list4 = [x[:x.find('-1')]+x[x.find('-1')+2:] if '-1' in x else x for x in list]
print('find:\t' + str(list4))
0252デフォルトの名無しさん
垢版 |
2018/02/03(土) 22:00:55.13ID:NG/4jS4k
>>251
result = [i.replace('-1', '', 1) if i.find('-1') == 4 else i for i in list]
-1の前の文字列の長さが変わる場合使えないけど
0253デフォルトの名無しさん
垢版 |
2018/02/03(土) 23:51:57.78ID:yAjTDr8r
>>252
>-1の前の文字列の長さが変わる場合使えないけど
でも、操作対象は
['1011-1-11', '1111-1-01', '1112-1-02', '1112-2-02', '1113-1-03', '1114-1-2-1-04', '1115-1-1-05']
が全てなんだから、そのコードでOKだろう
0254デフォルトの名無しさん
垢版 |
2018/02/04(日) 03:11:04.43ID:jQQPuGSR
>>251
if x.endswith('_1'):
0256遊園地
垢版 |
2018/02/04(日) 11:48:49.84ID:HO2WZcry
まずww データ変換が違う?んぅんぅううwwww

https://ideone.com/8tsKLz

split('-1') では なくww split('-')

[r.append(i.split('-')) for i in l]
appendは+=でも可能www

何のデータか分かんないからww - 消して良いのか?www
0257遊園地
垢版 |
2018/02/04(日) 12:19:09.89ID:HO2WZcry
ってwww 最初の一回だけかwww

 ならww 違うわqwww
0258遊園地
垢版 |
2018/02/04(日) 13:49:40.69ID:HO2WZcry
分割したリストの二番目が1なら
処理する


これではwww ダメなの?wwww
0259遊園地
垢版 |
2018/02/04(日) 13:51:51.04ID:HO2WZcry
何と言う発想www

自画自賛でwwww受けるwww
0261遊園地
垢版 |
2018/02/04(日) 17:00:12.78ID:HO2WZcry
正しい内容って何?

データ形式と出力結果だけ頼む
0262sage
垢版 |
2018/02/04(日) 22:31:46.18ID:TAiQJbHW
251ですが、言葉足らずでした。
print文のlist3,list4では既に欲しい出力結果が得られていました。
list3のreplace文ではない(正規表現に頼らない)書き方をlist4で模索しての
質問でした。

replace文では第3引数で1を指定することを知って、やっと欲しい結果が得られたの
ですが、それまでは
list3 =[x.replace('-1', '') for x in list]
と書いていて、欲しい結果とはなっていいなかったため、
list4では関数に抜き出して展開(提示して頂いた'-'で要素に分解する方法など)
するまでもなく、python流に内包表記の中で一時変数を使って簡潔な書き方が
あればという質問意図でした。

時系列としては、
 list2とlist3(replace第3引数なし)で結果NG
→list4で何とか結果OKとなる様に書けた
→list3にreplace第3引数を追加して結果OK
→list4がカッコ悪いのでpythonのカッコ良い書き方を質問

以上、お手数をお掛けしました。
0263遊園地
垢版 |
2018/02/04(日) 23:52:42.78ID:HO2WZcry
???

 何言ってるのか分からなかったwww

解決したならww おめーーーwww
0264デフォルトの名無しさん
垢版 |
2018/02/05(月) 01:47:02.01ID:5y/omfnv
幻覚、妄想、発作もちは今回に限らず何言っているのか分からないのが普通ことじゃないのかな
0265デフォルトの名無しさん
垢版 |
2018/02/05(月) 23:01:53.13ID:iKZIeQUL
ちょっと何言ってるかわかんないす
0266デフォルトの名無しさん
垢版 |
2018/02/06(火) 16:18:39.43ID:w6e05o5f
>>247
ダウンロードするときにretryingライブラリを使ったらうまくいってくれた
もっといいやり方があるかもだけど
0267デフォルトの名無しさん
垢版 |
2018/02/06(火) 16:26:45.93ID:ynZgc5Qh
https://github.com/oreilly-japan/deep-learning-from-scratch/blob/master/common/functions.py
https://github.com/oreilly-japan/deep-learning-from-scratch/blob/master/common/gradient.py


https://github.com/oreilly-japan/deep-learning-from-scratch/blob/master/ch04/gradient_simplenet.py

これの f という関数が意味不明です。引数の w を利用していません。

詳しい解説をお願いします。
0268デフォルトの名無しさん
垢版 |
2018/02/06(火) 16:36:07.12ID:ynZgc5Qh
>>267

このプログラムはひどすぎないですか?
0269デフォルトの名無しさん
垢版 |
2018/02/06(火) 16:42:15.85ID:ynZgc5Qh
b = 2

def f(a):
■■return b

print(f(b))


>>371

のプログラムは↑こんな感じのことをやっていますよね。

この著者の頭は大丈夫でしょうか?
0270デフォルトの名無しさん
垢版 |
2018/02/06(火) 16:42:40.31ID:ynZgc5Qh
訂正します:

b = 2

def f(a):
■■return b

print(f(b))


>>267

のプログラムは↑こんな感じのことをやっていますよね。

この著者の頭は大丈夫でしょうか?
0272デフォルトの名無しさん
垢版 |
2018/02/06(火) 16:51:04.93ID:ynZgc5Qh
>>371

よくこんなひどいプログラムを載せて恥ずかしくないですね。

こんな人が『入門Python 3』の監訳者であるというのが不思議です。
0273デフォルトの名無しさん
垢版 |
2018/02/06(火) 16:51:37.56ID:ynZgc5Qh
訂正します:

>>267

よくこんなひどいプログラムを載せて恥ずかしくないですね。

こんな人が『入門Python 3』の監訳者であるというのが不思議です。
0277デフォルトの名無しさん
垢版 |
2018/02/07(水) 05:37:58.51ID:Hq6Q+E3d
著者が入門以下
0278デフォルトの名無しさん
垢版 |
2018/02/07(水) 19:06:24.31ID:x7skM3vd
>>247
Py勉強スレ, http://mevius.5ch.net/test/read.cgi/tech/1513919747/680
にまぁまぁ良い例になりそうなネタがある
def oree(a,b)、def omae(a,b)にデコレータを使ってdef timer(func, *args)機能を追加
https://qiita.com/mtb_beta/items/d257519b018b8cd0cc2e
を参考に
def measure_time(func):
_import time
_import functools
_@functools.wraps(func)
_def wrapper(*args,**kwargs):
__start = time.time()
__r = func(*args)
__end = time.time()
__print(f'{func.__name__} time = {end - start:.5f}, return = {r:.5f}') # python 3.6
_return wrapper

@measure_time
def oree(a,b):
....
@measure_time
def omae(a,b)
0279デフォルトの名無しさん
垢版 |
2018/02/08(木) 04:47:54.58ID:xhTdXKdO
なんのためwrapするです?
0283デフォルトの名無しさん
垢版 |
2018/02/08(木) 20:11:08.54ID:yjGzg9Fl
>>267b

f = lambda w: net.loss(x, t)

この関数にはリターン文がありませんが、
net.loss(x, t)
の値が返るんですか?
0284デフォルトの名無しさん
垢版 |
2018/02/08(木) 20:15:26.20ID:yjGzg9Fl
>>283

どうも値が返るようですが、これはなぜでしょうか?

return を省略したときには None が返るのではないんですか?
0285デフォルトの名無しさん
垢版 |
2018/02/08(木) 20:16:57.90ID:yjGzg9Fl
ああ、無名関数には return を書かないんですね。
0287デフォルトの名無しさん
垢版 |
2018/02/09(金) 06:36:31.08ID:h2mjWzgv
returnを書かないというより書けない
つまりlambda中には文を置けない
式のみ置ける
式だから値を持ってる
0288デフォルトの名無しさん
垢版 |
2018/02/09(金) 07:24:07.57ID:mfiNCmZ5
>>287
だからどうした?
聞かれとんのは値が返るのはなぜかやで?わかっとる?
わかっとらんやろお前?
0293デフォルトの名無しさん
垢版 |
2018/02/09(金) 13:21:49.08ID:SD4e0J5S
返らない、返りたくない
0298デフォルトの名無しさん
垢版 |
2018/02/09(金) 19:05:28.20ID:mfiNCmZ5
>>297
なんでおまえの主観で仕様が決まると思っとんねんw
0299デフォルトの名無しさん
垢版 |
2018/02/09(金) 19:20:58.54ID:IVS/Pe6T
お前らはpythonの超使えるlambdaを用いたデコレータも書いているだろ
例えば、
@lambda func:
_import time
_import functools
_@functools.wraps(func)
_def wrapper(*args,**kwargs):
__start = time.time()
__r = func(*args)
__end = time.time()
__print(f'{func.__name__} time = {end - start:.5f}, return = {r:.5f}') # python 3.6
_wrapper
def oree(a,b):
....
0300遊園地
垢版 |
2018/02/09(金) 19:55:01.65ID:qf0NuhpI
素晴らしいww

 トイレで使った水をお風呂で使う様なlambda使用だwww
0301デフォルトの名無しさん
垢版 |
2018/02/09(金) 20:34:37.13ID:5pOE7da0
lambda ってランバダって読んじゃう
0302デフォルトの名無しさん
垢版 |
2018/02/09(金) 20:37:47.03ID:tdu0vLnD
うむ
0304愛恥人
垢版 |
2018/02/09(金) 21:26:11.28
自画自賛かよ
0305デフォルトの名無しさん
垢版 |
2018/02/09(金) 21:33:25.33ID:tgBeN59M
>>301
そんな貴方はアラフィフ
0306デフォルトの名無しさん
垢版 |
2018/02/09(金) 21:46:51.59ID:tdu0vLnD
水に浮く物体への浮力を考えたとき
大気圧(1気圧)中の水にういているときと
10気圧中の水に浮いているときとでは
かかる浮力に違いはありますか?
0307恥人
垢版 |
2018/02/09(金) 21:56:27.96
物体に働く力は重力と浮力だけで重力が変わらないなら浮力も変わらない
0308デフォルトの名無しさん
垢版 |
2018/02/09(金) 21:56:49.86ID:vUVRoJHK
>>305
どおっさんが5chには多いからな
どおっさんでこんな底辺の低脳スレって、
なんか発達できなくてアラフィフになって低脳ってことかな
0310デフォルトの名無しさん
垢版 |
2018/02/09(金) 23:52:45.72ID:mfiNCmZ5
>>309
全然違う
罵倒に大事なのは勢い
皮肉に大事なのは悔しい気持ち

ところでなぜ今このタイミングでその勘違いをしたの?w
0313デフォルトの名無しさん
垢版 |
2018/02/10(土) 04:28:00.01ID:vwdCUs46
namedtupleの第一引数って何のためにあるんでしょか?
ドキュメントによると第一引数はtypenameとあるだけで、その解説がありません
例えば書籍Effective Pythonに出てくる以下のコードでも
カッコの中にある'Grade'は何にも使われていません
一行に同じ名称が二つ出てきて紛らわしいので、使わないなら廃止して欲しいのですが

Grade = collections.namedtuple('Grade', ('score', 'weight'))
0314デフォルトの名無しさん
垢版 |
2018/02/10(土) 05:38:30.10ID:1vRRPdai
type(Grade)
0315デフォルトの名無しさん
垢版 |
2018/02/10(土) 05:48:54.25ID:2RwyNMOA
>>> g = collections.namedtuple('GradeType', ('score', 'weight'))
>>> g(0,1)
GradeType(score=0, weight=1)
>>> type(g(0,1))
<class '__main__.GradeType'>
0318デフォルトの名無しさん
垢版 |
2018/02/10(土) 12:53:52.71ID:KvypZuXh
df[“名前”]に名前が(重複あり)
df[“給料”]にint型の数値が入ったdataframeがあります
最終的に{名前:給料の平均値, 名前:給料の平均値...}という辞書にしたい
いまは
names=[i fo i in df[“名前”]]
names=set(names)
score={i:df[df[“名前”]==i]["給料"].mean() for i in names}
でやってます
なんかもっとシンプルだったり高速な手法ってありませんか?
0320デフォルトの名無しさん
垢版 |
2018/02/10(土) 16:17:38.95ID:9Ur4h2hf
>>313は超初心者スレの鑑なかんじだな
普通の初心者なら、なぜ'Grade'が要るのか質問するんだろうが
でも、このスレの超初心者らしくベクトルの方向が素晴らしい
0321デフォルトの名無しさん
垢版 |
2018/02/10(土) 19:33:01.04ID:osYRNhtT
>>320
お前も初心者スレの典型的なクズ系初心者なかんじだよw
0322デフォルトの名無しさん
垢版 |
2018/02/10(土) 20:08:07.65ID:OrjfwwVX
このスレに来るのはほとんどクズ系だろう

>>318
クズ系の超初心者のたまり場では非クズな奴の並みレベルの質問にはなかなか回答がないからな。
非くずが来るまでしばらく待ってね
0323遊園地
垢版 |
2018/02/10(土) 23:44:26.98ID:PklGIWAk
>>318
ggって、簡素で良いなら ノ

keys = ['a', 'b', 'c']
values = [10, 20, 30]

dic = dict(zip(keys, values))

print(dic)
0324デフォルトの名無しさん
垢版 |
2018/02/10(土) 23:57:42.46ID:RmGdaXa0
クズを罵るレスを機械学習して自動生成、カキコするプログラム、pythonでなら可能ですか?
0325デフォルトの名無しさん
垢版 |
2018/02/11(日) 00:07:45.77ID:q9UPBdZm
>>324
まずお前が学習してみたら?…無駄だけどw
0326デフォルトの名無しさん
垢版 |
2018/02/11(日) 00:14:48.20ID:ulm0sQ8V
>>325
糞レス即付いてるけど、これがあの釣りというやつなのか?
0327デフォルトの名無しさん
垢版 |
2018/02/11(日) 00:19:42.80ID:h5lI8K+n
さすが遊園地。遊園地レベルぐらいないと分からないんだろうな
これ何しているのか分からんが
dic = dict(zip(keys, values))
こんなシンプルにできるのか
0328デフォルトの名無しさん
垢版 |
2018/02/11(日) 00:26:19.10ID:MHMFdyK6
zipするところまではいいがその先は質問文をどう読み取るとその回答になるんだ
0329デフォルトの名無しさん
垢版 |
2018/02/11(日) 00:26:32.68ID:q9UPBdZm
>>326
確かにお前のは完全なる糞レスなんだけど
そんなに卑屈にならん方がいいと思うよ
0330遊園地
垢版 |
2018/02/11(日) 00:27:16.70ID:RRTIuu7j
くだすれ だったな。


変数(dic) =(は)  辞書型(dict)宣言の

   zip(複数の順序のある要素に並行して同時にアクセス)

 それは、  (keys配列 と values配列) です。
0331遊園地
垢版 |
2018/02/11(日) 00:29:39.64ID:RRTIuu7j
zip例

a=[1,2,3]
b=[4,5,6]

print(list(zip(a,b)))
# [(1, 4), (2, 5), (3, 6)]
0332デフォルトの名無しさん
垢版 |
2018/02/11(日) 00:31:52.21ID:MHMFdyK6
for k, vs in itertools.groupby(sorted(zip(keys, values))):
____vsl = list(vs)
____print(k, sum(vsl) / len(vsl))

バーカ
0333遊園地
垢版 |
2018/02/11(日) 00:34:34.34ID:RRTIuu7j
zipは複数の順序ある要素に並行して同時にアクセス

 だから、 リスト(配列)の種類(形式)が違ってても大丈夫


zip例2

a=["1","2","3"]
b=[4,5,6]

print(list(zip(a,b)))
# [('1', 4), ('2', 5), ('3', 6)]


返り値がタプルだからww listにしちゃおうって事が有るwww
0334デフォルトの名無しさん
垢版 |
2018/02/11(日) 00:34:53.10ID:h5lI8K+n
>>328
>をどう読み取るとその回答になるんだ
俺らのようなくずの超初心者ではレベルが違いすぎて理解できない
0335遊園地
垢版 |
2018/02/11(日) 00:36:19.86ID:RRTIuu7j
ああww 確かにww

 平均とか言うから 12月 で割ると 思ってたww
0336遊園地
垢版 |
2018/02/11(日) 00:43:16.42ID:RRTIuu7j
給料の平均だから


keys = ['a', 'b', 'c']
values = [10, 20, 30]

values01=[]
[values01.append(i/12) for i in values]

dic = dict(zip(keys, values01))

print(dic)
# {'a': 0.8333333333333334, 'c': 2.5, 'b': 1.6666666666666667}


俺の方が力技なのかwww

itertools.groupby sorted ? ソートしても順番は大丈夫なんか?

誰かww はよww 教えてww
0337デフォルトの名無しさん
垢版 |
2018/02/11(日) 00:58:11.04ID:ulm0sQ8V
>>329
いや、お前が釣られたんじゃねーのかと言いたかったんだ。
インターネッツ難しいわ。
300年ROMってくる。
0338遊園地
垢版 |
2018/02/11(日) 01:03:33.40ID:RRTIuu7j
俺の知識だと>>332が実行できない。

誰か解説して。

NameError: name 'itertools' is not defined
AttributeError: 'list' object has no attribute 'groupby'


itertools=[] で 取り敢えず定義して、
  list'オブジェクトに 'groupby'属性がありません
ここで躓いてる。
0340遊園地
垢版 |
2018/02/11(日) 08:39:56.59ID:RRTIuu7j
>>339 ありり
import itertools が居るんか。
TypeError: unsupported operand type(s) for +: 'int' and 'tuple'

面倒だから降参する。
0341デフォルトの名無しさん
垢版 |
2018/02/11(日) 09:02:42.80ID:Lbo8qBAq
>>317
namedtupleの第一引数はサブクラス名?として内部的に使われるものであり、
定義行以降のコーディングには表れないって理解でいいんですかね?
C言語の構造体タグのように、後からコーディングに使うためにあるのかと思ってました
0344デフォルトの名無しさん
垢版 |
2018/02/11(日) 09:27:26.04ID:zffMkL6z
>>318
とりあえずset内包表記を使ったほうがシンプルじゃないかと思った
names = {i for i in df[“名前”]}
0346遊園地
垢版 |
2018/02/11(日) 10:53:33.52ID:RRTIuu7j
>>342

 >>332のコードを実行

それだと、>>332が、どうやって通したのか分からないだろ?
0347遊園地
垢版 |
2018/02/11(日) 10:55:21.16ID:RRTIuu7j
形が違うなら、
どうやって、処理を通したのか。
0348デフォルトの名無しさん
垢版 |
2018/02/12(月) 17:59:56.24ID:MzkFBckq
リストの中のリストの要素を取り出して、別のリストにしたいのですが、どうすれば良いですか?

例えば

list = [[[1, 2, 1],[1, 1, 3]], [[1, 5, 1], [5, 9, 10]], [[ 100, 25, 1], [ 6, 9, 23]]]

の2番目の数を順番に取り出して、

a =[2, 1, 5, 9, 25, 9]

にしたいのですが…
整数とか文字列だけのリストの操作は
例えば
a[0] で 2 を取り出せるとかで分かるんですが、リストの中のリストの要素を操作する方法がさっぱりで…
0351デフォルトの名無しさん
垢版 |
2018/02/12(月) 19:13:09.40ID:MzkFBckq
>>349-350
ありがとうございます!
こんな簡単に出来るとは…
for とか range(len()) とか使ったりして3時間くらい悩んでました…w

本番のHSVにした画像(1500×500)から色相を抜き出す作業をしたらpythonが固まりました。処理が多いんですかね…悩んで書いたコードが全部消えちゃって悲しいですw
0353デフォルトの名無しさん
垢版 |
2018/02/13(火) 04:43:34.40ID:CThJWgS6
>>351
pythonは悪くない
お前が糞コード書いたから
0354遊園地
垢版 |
2018/02/13(火) 08:31:17.46ID:+eKUuXyG
画像処理は大体、グレースケールにして行うんだけど。
静止画像だから、GPU付け足せば、固まる事も無い。
0355デフォルトの名無しさん
垢版 |
2018/02/13(火) 10:11:09.44ID:fgBS1G35
>>352
わざわざありがとうございます!こちらの方が自分的に理解しやすいのでこちらにしよう…

>>354
すみません、取りたいのは色相じゃなくて明度でした
グレースケールでも元の画像でも同じ行程数だから重さも変わらないかなーと思ってそのままやっちゃいましたが、グレースケールの方が軽いんですかね…
何かむしろ作業量が増える気がしてw

今自分はBGRからHSVにして、1ピクセルごとの明度を抜き出そうとしてました
そのままのサイズでやると、確認のためリストを吐いてもらうときに固まるので、1/10のサイズにしましたがw
1万近い要素を抜き出すことになります
0356遊園地
垢版 |
2018/02/13(火) 10:31:24.02ID:+eKUuXyG
グレースケールなら通常画像の1/3で済む。
1万処理で固まるPCは画像処理に向いてないんじゃない。
0357デフォルトの名無しさん
垢版 |
2018/02/13(火) 11:12:46.98ID:fgBS1G35
>>356
あ、そうなんですね…グレーでも明度はそのままだしグレースケールにしてみます!ありがとうございます!

あ、リサイズ前の処理はたぶんもっと多いです
ピクセル数分だから100万くらい処理しますね
まぁインターネットとExcel等をするために買ったPCだから無理もないのかも…
0358デフォルトの名無しさん
垢版 |
2018/02/13(火) 12:35:02.76ID:IoOWXwkE
その程度の処理で、固まるPC なら、
JavaScript のブラウザゲームなんて出来ないだろ?

アプリ開発用PC は、コンパイルとかするから、
普通のPC よりも高性能なものがいる
0360遊園地
垢版 |
2018/02/13(火) 12:59:57.30ID:+eKUuXyG
ネタ発言として、
100万処理でもRaspberrypi3にMovidius Neural Compute Stick刺した時より、
劣ってたら駄目だろ。


100万処理の書き出しにフリーズするPCってw
108円から324円で売ってるPentium 4
以下の性能って事なになるぞ。
0361デフォルトの名無しさん
垢版 |
2018/02/13(火) 13:52:49.62ID:fgBS1G35
ゲームはしたことないので分かりませんが、youtubeを2つ同時に動かしながらFlashを見るとちょっと重いですね
そうなんですね…他言語にも手を出すなら買い換えるかなあ

PCはフリーズしませんよ
pythonが止まるんです
正確には、リストの中身をshellにprintしたら、処理中にIDLE自体が応答なしになります
10分放置してもダメでした
PC自体は普通に動きます
0362デフォルトの名無しさん
垢版 |
2018/02/13(火) 13:59:55.20ID:1/hdA564
標準出力への出力は結構重いよ
だからnumpyやpandasのような気が利いたライブラリは、データが増えすぎると省略表示する
0363デフォルトの名無しさん
垢版 |
2018/02/13(火) 14:51:53.64ID:IoOWXwkE
Python 内でメモリオーバーとか、
プログラムにバグがあるとか、
大量のデータをコピーしてるとか

何もプリントせず、プログラムの最後まで到達したかどうかだけを確かめれば?

たぶん、Python ではなく、君の勘違い
0364デフォルトの名無しさん
垢版 |
2018/02/13(火) 19:15:03.17ID:hE+D2prK
無限ループ作ってそうな気がするけど
0365遊園地
垢版 |
2018/02/13(火) 19:32:04.19ID:+eKUuXyG
テキスト書き出しに,print()なんて使わない。
確認のprint消して、ファイル書き込み。

それでも、軽量のIDLEが固まる事は無いけどな。

○ pythonエディターのIDLEが固まる
× pythonが固まる

標準出力関数 print さえ、消したらどうにか成るだろう。
0366デフォルトの名無しさん
垢版 |
2018/02/13(火) 21:26:04.89ID:fgBS1G35
>>362-365
そんな仕組みが…print がだめみたいだったですね
1/10の画像サイズで成功したプログラムを元のサイズに直して実行したら成功しました

皆さんのお陰で当初の目的は無事果たせました
ありがとうございます
初心者とはいえ、たった50行に3日もかかるとか雑魚過ぎですなw
0367遊園地
垢版 |
2018/02/13(火) 22:01:48.22ID:+eKUuXyG
優秀すぎ。
俺なんて、読み込むモジュール1つ増やしたら3行で一日掛かってる。
0368デフォルトの名無しさん
垢版 |
2018/02/13(火) 22:04:34.16ID:6NbXP/1F
なんや100万処理てw100万石みたいやなwww
0369遊園地
垢版 |
2018/02/13(火) 23:10:55.90ID:+eKUuXyG
10年前のPCで1億の処理回したら7分掛かった。

for i in range(100000000):
□print(i,end='')
#100000000回
#402.4338073730469[sec]
print(402/60)#6.7分
0370デフォルトの名無しさん
垢版 |
2018/02/15(木) 00:06:13.06ID:4IR3nEq8
教えてください、
pythonに、
sudo pip install 〜
こういう文字で始まる、
ライブラリを、インストールしたいのですが、
コマンドプロンプトに、コピーしても、
sudoは、内部コマンド外部コマンド〜
みたいな、エラーがでてインストールできません、
sudo pip こんなライブラリをどうやったら、インストールできますか?
0371デフォルトの名無しさん
垢版 |
2018/02/15(木) 00:22:12.16ID:sRt28JPf
PCはそんなやり方だけどスマホにはそんなやり方じゃなく
python -m pip install 〜
0372デフォルトの名無しさん
垢版 |
2018/02/15(木) 00:24:38.81ID:4IR3nEq8
PCにインストールしたいんですが、
OSはwindows7です、
sudo pip〜のライブラリを、どうやったらインストールできますか。
0374デフォルトの名無しさん
垢版 |
2018/02/15(木) 00:44:22.38ID:15PIIn7q
WindowsならまずAnaconda入れろ
そしてAnacondaから絶対に出るな
Python関連のインストール操作はすべてAnacondaだけで行え
0375デフォルトの名無しさん
垢版 |
2018/02/15(木) 03:52:47.14ID:HRhAawjm
マジレスすると、WindowsでのpipはPowerShellかコマンドプロンプト使ってsudo無しで入れられる
PowerShellとかのアイコン選択時に右クリックして「管理者で実行」がsudoの代わり
> pip install 「モジュール名」

入れるモジュールによってはVisualStudioとWin10SDKがないとビルド出来ないし、パス設定も面倒だし、
Python3.6系だとUnicodeDecodeErrorでビルドに失敗したりする

初心者で全く意味が分からなければ、whl形式のファイル落としてきてオフラインインストールするか、
他の人のアドバイス通りAnaconda環境に変えた方が楽だと思う
0376デフォルトの名無しさん
垢版 |
2018/02/15(木) 05:12:30.34ID:NCxYQEU4
初心者の学習用ならvisual studio入れた方がいいと思うよ
インストーラでanaconda入るし
interactiveの補完が優秀だから
0377デフォルトの名無しさん
垢版 |
2018/02/15(木) 12:05:36.58ID:ewI90HZW
years=[“2015-04-11”,“2016-12-22”]
みたいなリストから西暦の下二桁のリストを作成するとき
pat=r‘[\d]{2}([\d]{2})‘
tes=[re.findall(pat,i)[0] for i in years]
ってやってるんですけど、なんか違和感があります(欲しい形は出てくる)
本当はどうやるのがベターなんでしょうか
0378遊園地
垢版 |
2018/02/15(木) 12:42:58.62ID:DdWb+fDC
years=["2015-04-11","2016-12-22"]
for i in years:
□print(i[2:4].split('-'))

データ型がソレなら正規表現はいらないんじゃねえ?
0379デフォルトの名無しさん
垢版 |
2018/02/15(木) 12:44:29.59ID:4lKXUWzM
sudo は、Ubuntu などの、Linux。
Windows, Mac, Linux など、OS の種類もわからない人には、プログラム開発は無理

Windows10 なら、WSL で、MS Store から、Ubuntu 16.04 を導入すると、
最初から、Python 3.5 が入っている

君のような素人なら、Windows7 なら、Anaconda にこもって、
それ以外のパッケージマネージャーを使わないようにする

VirtualBox, Vagrant で、Linux を使うとか、全くわからないだろ?
ls, cd, bash とか、Linux のコマンドを知ってるか?
0381遊園地
垢版 |
2018/02/15(木) 12:47:23.16ID:DdWb+fDC
連結したのが欲しいなら、適当な配列tesにでも突っ込めば良い。
0382遊園地
垢版 |
2018/02/15(木) 12:51:22.57ID:DdWb+fDC
お前、将来ハゲるな。
0384デフォルトの名無しさん
垢版 |
2018/02/15(木) 12:53:37.41ID:g5ZKDDcS
もの言うハゲ
0385デフォルトの名無しさん
垢版 |
2018/02/15(木) 12:55:09.77ID:4lKXUWzM
>>377-378
require 'date'

d = Date.parse('1993-02-24')
d.year #=> 1993

Ruby なら、Date 型に変換できる。
Python にも、同様のクラスがあるだろ
0387遊園地
垢版 |
2018/02/15(木) 13:07:18.42ID:DdWb+fDC
一般人の昼休みはオワリだな。
おつーーーwww
0388370
垢版 |
2018/02/15(木) 14:10:07.04ID:4IR3nEq8
githubから、
ZIPでダウンロードしてきて、
pythonで作った、pyプログラムとかがあるところに、
ファイルおいたら、ライブラリ使えるようになりました、
ありがとうございました、
少し成長しました!
0389デフォルトの名無しさん
垢版 |
2018/02/15(木) 14:18:24.86ID:eTKG3ZZ8
>>377
import datetime

years = ['2015-04-11', '2016-12-22']
dates = [datetime.datetime.strptime(year, '%Y-%m-%d') for year in years]
lowwer_digits_of_years = [date.strftime('%y') for date in dates]
0390遊園地
垢版 |
2018/02/15(木) 14:57:38.79ID:DdWb+fDC
>>389
まあ、真面目に書くならコレやな。
0394デフォルトの名無しさん
垢版 |
2018/02/16(金) 01:14:52.16ID:Yz3zJ/9Z
プログラム全体を、
指定回数繰り返すにはどうしたらいいですか?
0395デフォルトの名無しさん
垢版 |
2018/02/16(金) 06:37:00.42ID:2VV1tK2j
>>362
重いならJuliaに乗り換えよう。
0399デフォルトの名無しさん
垢版 |
2018/02/16(金) 09:45:57.06ID:Yz3zJ/9Z
>398
シェルスクリプトっていうのがあるのか、
ありがとお。
0402デフォルトの名無しさん
垢版 |
2018/02/16(金) 18:15:36.40ID:25jf/8BW
リファレンス本が欲しいのですが3系にちゃんと対応している本ってありますか?
0403デフォルトの名無しさん
垢版 |
2018/02/16(金) 18:49:00.87ID:GMHRcYNg
いっぱいある
0405デフォルトの名無しさん
垢版 |
2018/02/16(金) 19:30:31.00ID:OT98fh5E
Pythonはオブジェクトの種類が多すぎて困る
イテラブルとイテレータの違いを説明できる人いる?
ていうかイテラブルって繰り返し可能っていう意味の形容詞だと思ってたわ
0406デフォルトの名無しさん
垢版 |
2018/02/16(金) 19:42:42.63ID:ERz9QjBU
>>405
ある程度Pythonでプログラム作成できる初級者レベルの奴なら当然できないと駄目だろうが、
でも、ここは超初心者が大多数だから出来る奴は少ないんじゃないのかな

遊園地なら余裕でイテラブルとイテレータの違いを説明できるから期待して待て
0407デフォルトの名無しさん
垢版 |
2018/02/16(金) 19:56:24.32ID:WNml02Hz
iter()で返ってくるオブジェクトがiteratorで
iter()によってiteratorを返すようなオブジェクトつまり__iter__()か__getitem__()を実装するようなオブジェクトがiterable objectってことじゃないの
つまり[1, 2, 3]はiterable objectで
iter([1, 2, 3])がiteratorだろう
0408デフォルトの名無しさん
垢版 |
2018/02/16(金) 20:27:54.04ID:MSGqnnUk
俺らのような超初心者は
__iter__(),__getitem__(), __next__()のようなのを使うようなことしないだろう
0409デフォルトの名無しさん
垢版 |
2018/02/16(金) 20:28:23.55ID:T+iGynCY
つまりどーゆーことだってばよ?
0410デフォルトの名無しさん
垢版 |
2018/02/16(金) 20:35:11.53ID:Yz3zJ/9Z
シェルスクリプトなのか分からないけど、
import os
for a in range(100) : os.system('python test.py')
これで、必要な回数プログラム実行できるようになった。

このループを途中で終了したいときは、
どうやればいいんだろ?
PyCharmてやつで、プログラム実行してるけど、
これを、いきなり閉じちゃうやりかたでもいい?
0411デフォルトの名無しさん
垢版 |
2018/02/16(金) 20:37:12.80ID:MSGqnnUk
>>409
このスレでは上級者の>>407にしたって、ことじゃないの、だろう
レベルでしかレスできない。
つまりこのスレではよく分からん、さっぱりわかりませんレベルと言うこと
(自信をもってちゃんと用語の説明が出来るレベルにはないと)
0412デフォルトの名無しさん
垢版 |
2018/02/16(金) 20:39:23.63ID:bV6azCnv
知らずに使ってる
0413デフォルトの名無しさん
垢版 |
2018/02/16(金) 20:48:05.65ID:MSGqnnUk
>>412
超超初級レベルの俺だって
for X in YYYY
なんかで、イテラブル・イテレータとかが関係している(?)のを使っているからな
0414デフォルトの名無しさん
垢版 |
2018/02/16(金) 21:20:06.11ID:WNml02Hz
>>409
for i in iterable:
みたいな文は実際にははじめにiter(iterable)が呼ばれて
返ってきたiterator(itとする)に対して
StopIteration例外がraiseされるまでnext(it)を呼び出しその結果をそれぞれiに束縛するという動作をする
なので普段意識しないでもiteratorは使っている

そう考えるとiterable objectとiteratorが一緒でもいいような感じがするし
実際generatorはiterableでありその上iterableでもある
ただiterableとiteratorを分離してクラスの肥大化を防ぐためにそういう仕様になってるんじゃないか
0415デフォルトの名無しさん
垢版 |
2018/02/16(金) 21:38:25.20ID:WNml02Hz
あとiteratorとiterableを分けることで複数回の反復が可能になるってのがあるな
rangeはiterable objectだけどiteratorではないから
r = range(100)
for i in r:
____print(i)
for i in r:
____print(i)
はできるが
generatorはiterable objectであり自分自身がiteratorだから
g = (i for i in range(100))
for i in g:
____print(i)
for i in g:
____print(i)
は無理
0416デフォルトの名無しさん
垢版 |
2018/02/16(金) 21:41:13.26ID:T+iGynCY
マジレスするとforの仕様ぐらい俺でも知ってるってばよ
そーゆー事じゃねーだろ
0417デフォルトの名無しさん
垢版 |
2018/02/16(金) 21:54:29.76ID:PU4qYOCy
そもそも違いを説明できるかって質問が意味不明
どちらもPythonのオブジェクトであること以外、何も同じじゃないだろ
0418デフォルトの名無しさん
垢版 |
2018/02/16(金) 22:00:15.05ID:WNml02Hz
>>416
どういうこと?
iterableとiteratorの違いの話では
>>407でiterableとiteratorの違いは書いた
>>414-415でiteratorのそもそもの意味、iteratorとiterableが別になっている意味について言及したんだけど
0419デフォルトの名無しさん
垢版 |
2018/02/16(金) 22:59:19.75ID:Yz3zJ/9Z
PyCharmのツールバーに、
停止ボタン発見した!
プログラム途中で辞める時は、このボタン押せばいいのか。
0420デフォルトの名無しさん
垢版 |
2018/02/16(金) 23:05:41.53ID:5HHWlQwe
どの言語でもforループでbreakやcontinue使えない中級者がいるよね
みんながんばれー
0422デフォルトの名無しさん
垢版 |
2018/02/16(金) 23:25:21.33ID:S3mlGk95
>イテラブルとイテレータの違いを説明
イテラブルとイテレータについてきいているのであって
Pythonでイテラブルやイテレータをどう実現するのか聞いているんじゃないんじゃないのか
俺自身、イテラブルやイテレータはほとんどわからん。
0423デフォルトの名無しさん
垢版 |
2018/02/16(金) 23:41:08.50ID:zuV+/SF8
ぶっちゃけ「オブジェクトの種類が多すぎ」という点からして要領を得ない
iterableもiteratorもPythonドキュメントの用語集に明記されているし
データモデルの特殊メソッド名なんか単なるインターフェイスに過ぎないだろう
0424デフォルトの名無しさん
垢版 |
2018/02/17(土) 00:05:27.82ID:srN4h2h/
どの言語でも初心者スレでいきなりiterator持ち出してドヤる上級者がいるよね
みんな巣に帰れー
0425デフォルトの名無しさん
垢版 |
2018/02/17(土) 00:17:49.35ID:PRSXaLoF
いやみんなお前程いろいろな初心者スレに精通してる訳じゃないから同意を求められてもw
0427デフォルトの名無しさん
垢版 |
2018/02/17(土) 00:36:00.95ID:PRSXaLoF
>>426
突然何言ってんのアスペ君?
0428デフォルトの名無しさん
垢版 |
2018/02/17(土) 00:36:28.72ID:BUliR1Ff
それほんと(超)初心者にはあるよな。俺も知っているぞとどや顔で話したくなるときがある。
でも、(超)初心者のそれは(超)しったかがほとんどだかからな
0429デフォルトの名無しさん
垢版 |
2018/02/17(土) 02:22:49.48ID:ub0BBZWD
枯れ木も山の賑わい
0431デフォルトの名無しさん
垢版 |
2018/02/17(土) 10:06:51.83ID:PRSXaLoF
なんか変なアスペが勘違いしてうやむやにしてしまったけど
結局だれか説明できるやつおらんの?>>405
0434デフォルトの名無しさん
垢版 |
2018/02/17(土) 10:46:56.40ID:S2HxDd2V
pythonでとってきたデータを、
Excelのセルに貼り付けるにはどうしたらいいですか?
0436デフォルトの名無しさん
垢版 |
2018/02/17(土) 11:05:36.13ID:LYzy673n
>>434
pandas.to_excel()
0438デフォルトの名無しさん
垢版 |
2018/02/17(土) 13:50:37.67ID:PRSXaLoF
なんとか話題についていこうと必死にググってリンクを貼ってるアスペおるなw
可愛いよアスペwwww
0439遊園地
垢版 |
2018/02/17(土) 14:23:04.96ID:j5MwtzW8
>>437
俺もコレ使ってる。
xlrd,xlwt直書きより楽だな
0440デフォルトの名無しさん
垢版 |
2018/02/17(土) 14:33:39.11ID:1VpmWKM+
>>431
俺も本を読んで昨日知ったんだよ(Python歴3年)
語感から、イテラブルは形容詞で、イテラブルなオブジェクト=イテレータだと普通思うだろ?
どっちもオブジェクトなんだそうだ
・値を順に取り出すことのできるオブジェクト=イテラブル
・組込関数next()に読ませるたびに値が順に一個ずつ出てくるオブジェクト=イテレータ

リストやタプルやrangeはイテラブルで、ジェネレータやファイルオブジェクトや
組込関数iter()に読ませたイテラブルはイテレータということらしい

イテラブル・イテレータはドキュメントに何気なく出てくるので、超初心者でも
覚えておかないとまずいと思った次第
0442デフォルトの名無しさん
垢版 |
2018/02/17(土) 14:54:22.69ID:Az1N2hD7
https://docs.python.jp/3/library/stdtypes.html#list
>コンストラクタは、 iterable の項目と同じ項目で同じ順のリストを構築します。 iterable は、シーケンス、イテレートをサポートするコンテナ、またはイテレータオブジェクトです。
イテラブルは性質、イテレータはオブジェクトタイプ
シーケンス、イテレートをサポートするコンテナ、またはイテレータオブジェクトは全部イテラブルだけど、それ以外の性質は違う
シーケンスはインデックスで要素を参照できるけど、イテレータオブジェクトはできない等々
0443デフォルトの名無しさん
垢版 |
2018/02/17(土) 14:54:56.30ID:MKCBoR91
質問です
リスト内包表記で
a=[0,1,2,3,4,5,6]
lst=[e for e in a if 2<e<5]とやって
lstの中身が[3,4]にするのはできるのですが
逆のパターン(1,2,5,6を残したい)をやるときはどうすればいいのでしょうか?
lst=[e for e in a if 2>e>5]にすると結果が[]になってしまいます。
lst=[e for e in a if 2>=e]
lst.extend(e for e in a if 5<=e)
とつなげるしかないのですか?
0446デフォルトの名無しさん
垢版 |
2018/02/17(土) 15:08:14.57ID:9JmhqCvr
>>440
iterable object=反復可能なオブジェクトでしょう普通に
iterator=反復子、主に現在位置を保持して制御する

こんなものPythonに限った話じゃないし、これをしてオブジェクトの種類が多すぎというなら
関数が多すぎというくらい可笑しな表現、概念を学ばず振る舞いだけを覚えるようでは理解が深まらんぞ

>>443
2より小さくて5より大きい数値は存在しないでしょう、if not 2 < e < 5なりなんなり内包表記以前に条件式の問題
0447443
垢版 |
2018/02/17(土) 15:20:11.70ID:MKCBoR91
not 使えたんですね・・・ありがとうございます!
if not 2 < e < 5
0448デフォルトの名無しさん
垢版 |
2018/02/17(土) 15:32:42.89ID:IU1gsQgu
Ruby では、Enumerable module を include して、each を定義すれば、
Enumerable内の数十のメソッドが使えるようになる

また、Enumerable を継承した、より便利な、
Enumerator クラス(外部 iterator)を返すようにすると、
そのクラスに処理を丸投げ(委譲)できる
0449デフォルトの名無しさん
垢版 |
2018/02/17(土) 15:37:48.86ID:cicN/htR
format(引数名)ってやりたいんだけど、方法がよくわからない
これってもしかしてプロのグラマーが怒る、やったらアカン系のやつですか?
0452デフォルトの名無しさん
垢版 |
2018/02/17(土) 15:55:30.42ID:PRSXaLoF
怒らんわそんなことでw
0453デフォルトの名無しさん
垢版 |
2018/02/17(土) 15:57:55.95ID:S2HxDd2V
>>435
>>436
>>437
ありがとおございます、
なんかimportでエラーが出てうまくいかないけど、
importのやり方自体分かってないのかも、
もう少し勉強してみます。
0454デフォルトの名無しさん
垢版 |
2018/02/17(土) 16:06:44.50ID:MCbrsfg3
>>444
何が言いたい
0455デフォルトの名無しさん
垢版 |
2018/02/17(土) 16:57:56.18ID:gSWBAnwA
>>454
言葉を使うことができない言語障碍者にそういうことを言ってはダメ
恐らく言葉にすると俺超すごいだろと言っているんだろう
0456デフォルトの名無しさん
垢版 |
2018/02/17(土) 17:12:10.02ID:gSWBAnwA
>>433
ググることができないレベル(超低脳)の奴がPython野郎には多いから
ここ超初心者用がある。俺のような超低脳がたくさんPythonに押し寄せているんだろう
0457デフォルトの名無しさん
垢版 |
2018/02/17(土) 17:18:45.10ID:DOQJ47ER
>>456
いや、ググることすらできない奴はいいのよ
ID:WNml02Hz みたいな人もいるのでこういうスレが成り立ってる
最悪なのはアスペしか言えない ID:PRSXaLoF みたいな奴
マジで邪魔
0458デフォルトの名無しさん
垢版 |
2018/02/17(土) 17:32:07.13ID:MCbrsfg3
>>444
rangeオブジェクトはシーケンスだし、iterした時点で返ってくるのはrangeじゃないからな
0459デフォルトの名無しさん
垢版 |
2018/02/17(土) 17:55:03.93ID:PRSXaLoF
>>457
アスペ君ついに本音が漏れるwwww

超初心者ばかりだと簡単にマウントとれて楽しいよねアスペ君w
残念ながらまだまだ邪魔しますよーwwww
0461デフォルトの名無しさん
垢版 |
2018/02/17(土) 20:16:47.07ID:gSWBAnwA
Pythonスレは他の言語スレとは違いは基地外、超低脳ですら大歓迎だからな
そのような人達を見捨てないで温かく受け入れてくれる素晴らしい言語がPython
0462デフォルトの名無しさん
垢版 |
2018/02/17(土) 21:22:57.86ID:PRSXaLoF
俺はキチガイは徹底的に叩くけどなwww
0463遊園地
垢版 |
2018/02/17(土) 21:32:16.31ID:j5MwtzW8
煽られると発狂と激怒はする。(2ch時代からの伝統だから、しゃーない。)

真っ先に俺を叩かない所、過去スレを見てないなw。
0464デフォルトの名無しさん
垢版 |
2018/02/17(土) 22:19:33.19ID:ZVMrHX2D
>>461
rubyと正反対だな
あっちは冷たすぎる
0467デフォルトの名無しさん
垢版 |
2018/02/18(日) 00:16:00.77ID:trAPtbQv
>>463
お前は超低能の部類だから優しくするよw
0469遊園地
垢版 |
2018/02/18(日) 00:47:19.76ID:OWkH/HB4
エラーでるけど、動く。
修正がだるい。
寝よう。
0473デフォルトの名無しさん
垢版 |
2018/02/18(日) 12:14:21.63ID:k1v/mjkP
>>472
出来ないというかそもそもif文とは別物、三項演算子は値を返す式
式中に文は書けないし、片方だけreturnするなら普通にif文を使う
0476デフォルトの名無しさん
垢版 |
2018/02/18(日) 13:44:36.51ID:RKNpLHWC
loggingでlogを残したいんだけど正常に動いてるというメッセージはどのレベルに設定したらいいの?INFO? DEBUG?
0479デフォルトの名無しさん
垢版 |
2018/02/19(月) 12:23:50.01ID:rLF2QBDt
@classmethodってオブジェクトのコンストラクターみたいな使い方がほとんどなの?
0481デフォルトの名無しさん
垢版 |
2018/02/20(火) 00:39:11.37ID:fvmuESEH
最近はパイちんくんの本がたくさん出過ぎでどれ買っていいか迷うよ
初めてのパイちん、みんなのパイちん、退屈な時はパイちん、、
Deepパイちん、12歳から始めるパイちん、いきなりパイちん
沢山あるよwww
0482遊園地
垢版 |
2018/02/20(火) 13:43:54.96ID:A6ADeU17
12歳からはじめる ゼロからの Pythonゲームプログラミング教室
は、割と難しいので、

Python-izm
https://www.python-izm.com/

から、やった方が良いでゴザル

注意
 あくまでも、個人の感想です。
0483デフォルトの名無しさん
垢版 |
2018/02/20(火) 17:06:52.34ID:nTaWSzk1
>>482
Python-izmでも難しい。
0484デフォルトの名無しさん
垢版 |
2018/02/20(火) 17:56:38.91ID:QsM0zlKS
visual studio 2017 python 使おうとしたんだけど
ファイルうまく読み込みできない Interactiveだとうまくいくんだけど
これなんか設定必要なのかな 教えてください
0485デフォルトの名無しさん
垢版 |
2018/02/20(火) 20:42:29.77ID:+8qGGwi5
>>484
インタラクティブはVisualStudioで開けるインタラクティブシェルのこと?
ファイルの読み込みは具体的にどうやったの?
0486デフォルトの名無しさん
垢版 |
2018/02/20(火) 21:43:14.35ID:/xNNFjq5
>>484
ファイルうまく読み込みできないのはpythonでではなくvisual studio 2017 でだろ
なら、visual studio 2017 のスレの方が良いのかもしれない
>>485 具体的に説明しない・できない連中のためのスレがここ超初心者用だからな
レスする奴には素晴らしい妄想力が必要とされる
0487デフォルトの名無しさん
垢版 |
2018/02/20(火) 21:59:51.39ID:abfzbO0r
>>485
>>486
早速ありがと

reposにある
PythonApplicationフォルタにファイル突っ込んだら読み込めた
とりあえず読めたがこれがスタンダードなやり方なのかな
基本絶対パスで読み込ませるのがセオリーなのかな?
0488デフォルトの名無しさん
垢版 |
2018/02/20(火) 22:22:53.55ID:/xNNFjq5
>>487
visual studio 2017 は使っていないから具体的なアドバイスはできないが
恐らくMSあたりがvisual studio + pythonで開発するやりかたの1からのチュートリアル
を公開しているんじゃないのか。ここできくよりこんなのを探した方がよいと思う
0489デフォルトの名無しさん
垢版 |
2018/02/20(火) 22:31:50.16ID:Qs1V/krE
>>487
セオリーなどはない
そこにファイルがあるか、ないか
それだけだ
Pythonはいつだって非情な仕事人なんだ
0492デフォルトの名無しさん
垢版 |
2018/02/22(木) 10:29:53.24ID:Nj0qGp8Q
実行時のカレントディレクトリがどこになるかだけの話だから、実行のオプションを見れば良い
0493デフォルトの名無しさん
垢版 |
2018/02/22(木) 18:10:48.03ID:Of4U3Pd7
Windows7にpython.orgからダウンロードしたPython3.3〜3.6の
パッケージをインストールして、venvで使い分けています

わけあってAnacondaを入れたいんですが、このままインストールすると
今の3.3〜3.6のPythonは使えなくなるんでしょうか?
もしそうなら、共存させる方法を教えてください
0494デフォルトの名無しさん
垢版 |
2018/02/22(木) 18:37:09.28ID:Vbb1zIx/
質問です
watchdogを使用してディレクトリ監視しようとしてますが
複数のディレクトリを一度に監視出来るでしょうか
0496デフォルトの名無しさん
垢版 |
2018/02/23(金) 01:27:52.45ID:ubW9cswG
VisualStudioなら「ツール」→「オプション」でPythonEnviroment追加出来る
穴コンダを別のディレクトリにインストールすれば、公式版といつでも切り替え出来る
0497デフォルトの名無しさん
垢版 |
2018/02/23(金) 01:34:17.45ID:BB6IXrbG
>>494
出来るかは知らないが、googleでの検索語をwatchdog +ディレクトリとかして
気合を入れて検索して、それでお前がやろうとしていることをやっているようなことが
出てこなかったらできないと思って良いんじゃないのか
0499デフォルトの名無しさん
垢版 |
2018/02/23(金) 08:39:59.70ID:3zWDV7Rk
>>497
結構調べましたが出てこなかったので出来ないかもしれないです

>>498
フォルダ1つに対してであれば出来ましたが複数となるとそもそもどうやれば良いのかわからず質問した次第です
0500デフォルトの名無しさん
垢版 |
2018/02/23(金) 15:58:12.68ID:0tA6Y4q1
pathさえ正しければ共存可能
良く分からなくなったらvenvにこだわらず
set PATH=
で全部リセットして正しい値に総入れ替え
0501デフォルトの名無しさん
垢版 |
2018/02/23(金) 15:59:36.86ID:0tA6Y4q1
>>499
windowsならディレクトリに監視属性付けて
notifyeventを自分のプログラムでcatchし続けるサービスを書くとかで桶
0502デフォルトの名無しさん
垢版 |
2018/02/23(金) 16:17:23.36ID:scrR/Weo
1 18.08 18.08
2 13.61 31.69
3 13.62 45.31
4 13.86 59.17
5 13.98 1:13.15
6 14.18 1:27.33
7 14.50 1:41.83
8 14.47 1:56.30
9 14.42 2:10.72
10 14.22 2:24.94
11 14.43 2:39.37
F 14.52 2:53.89



1 18.19 18.19
2 13.66 31.85
3 13.67 45.52
4 13.80 59.32
5 13.73 1:13.05
6 13.90 1:26.95
7 14.41 1:41.36
8 14.49 1:55.85
9 14.82 2:10.67
10 14.80 2:25.47
11 14.93 2:40.40
F 15.08 2:55.48
0503デフォルトの名無しさん
垢版 |
2018/02/23(金) 20:05:41.02ID:DhooUh4n
すいません。教えてください。
swigでC++のクラスをpythonに移植したのですが、
そのクラスのオブジェクトをdeepcopyでコピーしようとしたらpickleできないとかいうエラーになりました。
copy_regになにか関数を登録するとdeepcopyできるようになるらしいのですが、
ググってもやり方がよくわかりません。
C++のオブジェクトをdeepcopyできるようにするにはどうしたらいいでしょうか。
0504デフォルトの名無しさん
垢版 |
2018/02/23(金) 21:46:17.20ID:Wg8Z236B
idleで編集してるんですがshift+tabでインデントが左に戻らずに右に進んでしまいインデントを戻せない

idleの設定変えればいいと思うんですがどこ変えればいいんでしょうか
0506503
垢版 |
2018/02/24(土) 00:22:57.66ID:KZ58FcHI
deepcopy出来ました。
お騒がせしました。
0507デフォルトの名無しさん
垢版 |
2018/02/24(土) 17:08:30.57ID:Dd1othiR
ideとかエディタでホームポジションのまま→に移動できるショートカットってない?""の後とか()の後にいちいち→おすとホームポジションから手を話さなくてはならなくてめんどう
0508デフォルトの名無しさん
垢版 |
2018/02/24(土) 18:23:24.40ID:UjV7lXbs
ググって検索結果に出てこなければできないってことは無いでしょw
子供かよw
0509デフォルトの名無しさん
垢版 |
2018/02/24(土) 18:29:40.45ID:MHMExzVL
Pythonで作ったプログラムを他の人に渡すにはわざわざ環境用意してもらわないといけないの?
0511デフォルトの名無しさん
垢版 |
2018/02/24(土) 20:20:49.04ID:S7UxFmQS
webがないと何も出来んのかweb屋はw
0512デフォルトの名無しさん
垢版 |
2018/02/24(土) 20:42:39.96ID:QCDdZlsY
おもちゃのパソコンでなければPythonは入ってますよ
おもちゃのパソコンでなければ、ね
0515デフォルトの名無しさん
垢版 |
2018/02/25(日) 01:33:29.46ID:pcyqC+jB
Windows10 Home で、WSL で、MS Store から、Ubuntu 16.04 LTS をダウンロードして、
Ruby をインストールする

最初から、Python, vim も入っている

200MB ほどダウンロードして、850MB ほどの容量。
ただし、GUI版ではなく、基本的な機能しかないけど

だから、Windows10 Home でも、開発環境として、Ubuntu が使える。
ただし、サーバーのように常時実行はできない。
開発環境として使えるだけ

Docker も使えない
0516デフォルトの名無しさん
垢版 |
2018/02/25(日) 01:54:33.31ID:jUteSjvv
PythonはRubyとかいううんことは違ってUNIXに依存してないのでPythonでも普通に使えるよ
というかWinで使ってる人が一番多い
0518デフォルトの名無しさん
垢版 |
2018/02/25(日) 09:19:09.54ID:tVogG6Wu
>>517
蛇使いてパイソンの事か?なんか困るん?パイソン流行ると?
0521デフォルトの名無しさん
垢版 |
2018/02/25(日) 12:22:49.03ID:6Rr2IhVo
>>519
型を書かないことでコード量が減るから
JavaやC#などのコード量のうち、10%くらいは型関連のキーワードだろう
0522デフォルトの名無しさん
垢版 |
2018/02/25(日) 14:17:03.05ID:HxcqvxGx
リストの演算やスライスが1文でまとめて出来ること、
pandasやmatplotlibの様な使いやすいモジュールがあること、かな

C#やC++の型宣言はvarやautoで推論出来るから、昔ほど面倒ではなくなってる
0523デフォルトの名無しさん
垢版 |
2018/02/25(日) 15:15:27.02ID:DMbXpP0c
>>518
裾野が広がり過ぎると
ゴミみたいな質問でスレが埋まる
0524デフォルトの名無しさん
垢版 |
2018/02/25(日) 16:09:26.99ID:raNwv933
python便利です
csv・xml出力の実験データのまとめとか
製品の異物確認にもopencv使えるし
使える使えないで仕事の処理量は段違い
惜しむのは40手前で出会った事

中学ぐらいでpython教えれば
高校の数学が面白くなるのになとおじさんは思いました
0525デフォルトの名無しさん
垢版 |
2018/02/25(日) 16:18:04.88ID:DMbXpP0c
そだねーjapan
0527デフォルトの名無しさん
垢版 |
2018/02/25(日) 17:51:58.41ID:tVogG6Wu
>>523
どうせおまえもゴミみたいなもんなんやから気にすんなよそんな事w
0529デフォルトの名無しさん
垢版 |
2018/02/25(日) 23:01:05.83ID:4H5jUe5i
プログラミング自体が初めてで、pythonに興味を持って始めました。

1行4列の行列がnあります。要素は全て数字で、データの抜けはありません。

[100,50,250,300]
[101,20,150,150]
[101,30,200,150]
[102,80,100,200]
   ・
   ・

やりたいことは、n行4列の1つの行列にまとめたいです。

ただし、条件がありまして、1列目の要素同士が等しいときは、

1列目 そのまま 上の事例ですと、101
2列目 2列目の要素の合計 20+30=50
3列目 次の式で演算  Σ(2列目*3列目)/Σ(2列目)
 (20*150+30*200)/(20+30)=180

4列目 そのまま 上の事例ですと、150

1列目の要素に重複がある場合、上のような演算をしながら、
行列に整理したいです。ですので、完成した行列の行は初めのn行より少なくなります。

完成形
[100,50,250,300]
[101,50,180,150]
[102,80,100,200]

すみませんが、ご教示いただけますよう、お願いします。
0530デフォルトの名無しさん
垢版 |
2018/02/25(日) 23:44:20.79ID:Uk0i7a7U
>529
仕様が不明なところがあるので質問します。
1列目が同じだったら、4列目も必ず同じになるのですか?
もし、そうでない場合、4列目はどうやって計算するのですか?
0531デフォルトの名無しさん
垢版 |
2018/02/25(日) 23:54:15.75ID:4H5jUe5i
>>530
不十分な書き方をして申し訳ありません。 今回の場合、1列目がそれぞれ等しい場合は、4列目もそれぞれ等しくなります。異なってしまうことはないという前提です。ですので、2列目、3列目で所定の演算をして、1列目の要素が等しいもの同士を集約します。
これでご理解いただけましたでしょうか。
もし何かございましたら、ご指摘ください。よろしくお願いいたします。
0532デフォルトの名無しさん
垢版 |
2018/02/26(月) 00:45:55.72ID:rDF2fLvE
>>529
宿題の丸投げのような感じだな
動かなくてもよいから自分でやってみたpythonコードだせないのか
0534デフォルトの名無しさん
垢版 |
2018/02/26(月) 03:11:45.17ID:RRYIMw3l
昔からいたよ
ここ2~3年までPythonは日本語圏でドマイナーだったから目につかなかっただけ
それまでのド素人はVBかPHPかRubyをやっていた
0535デフォルトの名無しさん
垢版 |
2018/02/26(月) 06:35:30.76ID:CZMjr0z3
>>532
事務系社会人です。独学なので宿題ではないです。自分用の簡単なツールを作りたいというのがきっかけです。
始めはnumpyで、行列内部で要素の演算させるつもりでしたが、うまくできませんでした。
次にpandasで、表形式でやろうとしましたが、今一わかりません。

すみません、今日の夜にでも、不完全な自分のコード提示します。
お目通しいただきご教示くださるとありがたいです。
0536デフォルトの名無しさん
垢版 |
2018/02/26(月) 07:24:03.85ID:GTfBnsec
>>533
ブーメラン乙です
0537デフォルトの名無しさん
垢版 |
2018/02/26(月) 07:37:58.92ID:IuGyHUGL
>>524
Juliaを中学生から教えたらいい。sympy使えるし。
0538デフォルトの名無しさん
垢版 |
2018/02/26(月) 07:41:38.60ID:IuGyHUGL
>>526
scratchからやったら。
0540遊園地
垢版 |
2018/02/26(月) 10:11:37.79ID:cTQBZcAI
>>535
目的を人間っぽく書いて、その為の実現したいコード処理を記載
読み込んだデータ形式も簡易表現で構わないから、コードにコメント等で書いて。


numpyで、行列内部で要素の演算
どの様な演算なのか? 受け取るデータ形式は、どの状態なのか?
何が想定と違うのか?


pandasで、表形式
どの様な表なのか? 上記と同じ


  コード書きや想像可能な命令後のキーワド検索は、後回し。
0541デフォルトの名無しさん
垢版 |
2018/02/26(月) 10:19:53.48ID:oHOLuzwx
なんかnumpyって使いにくいのよね
全部pandasでやっちゃう
計算速度とかは知らん
0543デフォルトの名無しさん
垢版 |
2018/02/26(月) 14:50:55.91ID:Q2qtK4xZ
数字(str)
0545デフォルトの名無しさん
垢版 |
2018/02/26(月) 15:55:59.62ID:NcBRNf65
before_data = [[100,50,250,300], [101,20,150,150], [101,30,200,150], [102,80,100,200], [102,20,150,200]]
hashed_data = before_data.group_by { |row| row[0] }

#=> {100=>[[100, 50, 250, 300]], 101=>[[101, 20, 150, 150], [101, 30, 200, 150]], 102=>[[102, 80, 100, 200], [102, 20, 150, 200]]}

# 配列の蓄積器に、結果を入れながら、処理を繰り返す
result = hashed_data.each_with_object([]) do | (key, rows), ary |
if rows.length >= 2
puts "rows"
p rows

# 配列の蓄積器に、結果を入れながら、処理を繰り返す
r = rows.each_with_object([]) do | row, ary2 |
if ary2.length == 0
ary2.push *row # 展開
ary2[2] = row[1] * row[2]
else
ary2[1] += row[1]
ary2[2] = ary2[2] + row[1] * row[2]
end
end
r[2] = r[2] / r[1].to_f
ary.push r
else
ary.push rows.flatten
end
end
p result

Ruby で作った。結果
[[100, 50, 250, 300], [101, 50, 180.0, 150], [102, 100, 110.0, 200]]
0546デフォルトの名無しさん
垢版 |
2018/02/26(月) 16:23:21.61ID:B76OQfBv
プログラミングのレポート課題としていいテーマありますか?
2週間くらいで0から理解できる内容で
機械学習とか候補に入ってるんですが2週間じゃキツイですか?
0548デフォルトの名無しさん
垢版 |
2018/02/26(月) 17:52:45.87ID:OBKUk/zi
>>546
1. ユーザーが入力した何らかの文字列を受け取る
2. 1. の文字列が以前までに入力されたものと同じなら、そのときの回答と同じ回答を表示する
3. そうでない場合は、回答をユーザーに入力させ、入力内容を回答としてそのまま表示する
これで教師データに対しては精度100%のAIができる
2週間ならこんなもんだろ
0549デフォルトの名無しさん
垢版 |
2018/02/26(月) 18:08:45.28ID:91BhH+0u
今日からpythonを勉強し始めました
ここのfibo()関数が、fibo(37)ぐらいで恐ろしく時間がかかる(10秒ぐらい)んですが、
こんなものなんでしょうか?あまりに遅すぎると思うのですが。。。
試しにcで書き直したらfibo(37)が一瞬で終わりました。
環境:Windows10上のWSL+Ubuntu上のpython3.5.2、CPU corei7
https://qiita.com/Wreulicke/items/e8f7290f6b4ff98e6142
0550デフォルトの名無しさん
垢版 |
2018/02/26(月) 18:22:50.71ID:wtxU8Pq4
数千万回の関数呼び出ししてるから、Pythonなら10秒くらいで正常。
100万回の単純な演算なら、1秒以内でいける。
1000万回の演算だと、かなり単純なのでも、1秒以内は厳しい、というのが相場かな。
cやc++よりは、50倍くらい遅いよ。
0551デフォルトの名無しさん
垢版 |
2018/02/26(月) 18:25:26.87ID:91BhH+0u
>>550
あーそうなんですね!
pythonは科学計算ではなくテキスト処理?とか
ぱっと簡単に処理を書くのに向いてそうですね
ありがとうございました!
0554デフォルトの名無しさん
垢版 |
2018/02/26(月) 19:05:04.37ID:wtxU8Pq4
>551
科学計算するときは、numpy使うらしい。

>552
速いPC使ってるんだね。
うちのi7 では13.5秒かかった。
アルゴリズムを変えて、メモ化したり、ループに書き直したりすれば、一瞬で終わるけど。。
0555デフォルトの名無しさん
垢版 |
2018/02/26(月) 19:07:56.71ID:/Zv3SJNj
>>554
あ、すまん
>>549のURL見てなかった
自分で勝手に関数作ってたわw

でも、URLの関数使っても3秒くらいで終わったわ
0556デフォルトの名無しさん
垢版 |
2018/02/26(月) 19:10:09.18ID:wtxU8Pq4
>553
corei3なの?
ideone.com で、pypy2.7で計算したら、0.56 secまで速くなったけど、0.1 sec には届かない。

リンク先のコードと違うので計算したのでは?
0560デフォルトの名無しさん
垢版 |
2018/02/26(月) 20:07:38.88ID:GTfBnsec
あぁ、末尾再帰とか、lazyとかね、昔はよくやったよね懐かしいわw
まあ今は機械学習が全盛だし、もう末尾再帰とか、lazyとかの時代じゃないっしょw
0561デフォルトの名無しさん
垢版 |
2018/02/26(月) 20:10:49.36ID:noERqLSe
末尾再帰はみみっちい、男らしくない考え。
そんなんだったら最初からforループ使っとけ
0562デフォルトの名無しさん
垢版 |
2018/02/26(月) 20:28:42.84ID:YPK1H5Uc
Jupyterから実行したかどうか判定する方法ってあります?
0564デフォルトの名無しさん
垢版 |
2018/02/26(月) 21:59:17.46ID:mANSF+RP
>>563
お前答えられへんだけやんけwww
ちなみに、俺は知らん
0566デフォルトの名無しさん
垢版 |
2018/02/26(月) 22:30:00.38ID:QuhxkvaQ
>>564
知らないのはお前、俺、>>562ぐらいだろう
このスレの連中は遊園地を筆頭に人間性に大問題ある奴ばかりなために
知っているが教えない奴が圧倒的。pyスレに来る目的が基地ル、雑談するためだからな
0568デフォルトの名無しさん
垢版 |
2018/02/26(月) 23:30:50.93ID:Q2qtK4xZ
>>567
何を作りたいかでかわってくる
それがないならどっちでもいいんじゃないですかね
0570529=535
垢版 |
2018/02/26(月) 23:38:23.76ID:CZMjr0z3
>>542
ご面倒をおかけしました。
ありがとうございました。
コードの中身をよく拝見させていただき、
これからpythonを勉強する励みにいたします。
ありがとうございました。
0571529=535
垢版 |
2018/02/26(月) 23:41:34.76ID:CZMjr0z3
>>540 遊園地様
>>542様が回答を示していただきましたが、下記のとおり
私のポンコツコードを示したいと存じます。

再掲 
[100,50,250,300]
[101,20,150,150]
[101,30,200,150]
[102,80,100,200]
   ・
   ・
目的
・ 1列目:商品コード、2列目:数量、3列目:仕入金額(単価)、1列目:販売金額(単価)です。
  上記例では、数字を単純化しています。また実際は、重複含め100以上のデータ(行)があります。
・  重複している商品コードを整理し、その場合、数量の合算、金額(単価)の加重平均を行い、
  最終的に、きれいな行列に整理したい。
・  データはCSVで与えられている。
・ Excel上で計算やVBAも使用できるだろうが、CSVのデータを取込み、pythonの中?で計算して、結果を出してみたかった。

以下、連投します。すみません。
0572529=535
垢版 |
2018/02/26(月) 23:47:35.71ID:CZMjr0z3
#coding: UTF-8

import pandas as pd
import numpy as np

nan = float("nan")

#データ読込
data = np.loadtxt('data.csv',delimiter=',',dtype='float',skiprows=0) #データ全体を読込
data_code = data[:,0]                                  #データ全体から「商品コード」部分を取出す 

df1 = pd.DataFrame(
{'CD': data[:,0],
'quantity':data[:,1],
'@': data[:,2]},
columns=['CD', 'quantity', '@'])
print(df1)                       # とりあえず、表みたいな形式になるか確認してみた

data_code = np.array(data_code.reshape(len(data_code),))   # 商品コードの重複を削除してみた
print(data_code)

# ここから重複のない純粋な商品コードをkeyにして、そもそものデータ全体を対象に、上から回して行って、
 Excelのvlookup関数のような感じで、2列目、3列目の数字を取出し、目的の演算を行おうとしていた。
0573529=535
垢版 |
2018/02/26(月) 23:48:06.01ID:CZMjr0z3
質問では、1行4列の行列が、nあるとしましたが、本当はCSV全体で1つの行列になると思いましたので、
numpyを使って、重複を発見したときに、i行2列、同3列の数値を取出し、目的の演算をしようと初め思っていました。
しかし、行列の内部での要素の取出しが今一つわかりませんでした。(初心者用の本しか持っておらず、ネット頼りでしたが
必要な情報を見つけられませんでした。
それで、表形式になるpandasのDataframeを用いてみましたが、重複除きの商品コードから、
当該の行データを取出し、同様に2列目、3列目の数値を用いて演算させるのがわかりませんでした。

かなり自分でも能力が足りないのに、欲張っていたかと思います。
反省いたします。
機械学習に興味関心がありますので、今後、pythonの勉強を頑張りたいです。
ご迷惑でなければ、また皆様にご教示いただきたいです。
0574デフォルトの名無しさん
垢版 |
2018/02/27(火) 00:24:03.42ID:WS3TaZ0C
行列の大きさ次第では計算量がすごいことなるで

メモリとか時間を気にせんのと、初心者っぽくやるなら、numpyのuniqueをまず使ってループ回すかな
0575デフォルトの名無しさん
垢版 |
2018/02/27(火) 00:37:56.53ID:tquTMsI7
>>571
最初からその説明(具体的な処理目的説明)していたら展開が違ったような気がする
俺なら
重複している商品コードを整理し
全データ(100以上のデータ)で重複している商品コードを洗い出す処理をして
{101:[20,150,150], [30,200,150]} <= valueが2個以上なら重複とわかる
とかを生成して、
これ(商品コード101)に対して数量の合算、金額(単価)の加重平均を行うような処理にするが
0576デフォルトの名無しさん
垢版 |
2018/02/27(火) 00:47:13.10ID:FXmriiXi
import numpy as np
a=np.array([0,1,2,3,4,5])
b=np.array([0,1,2,3,4,6])
print(np.sum(a == b))
>>5

numpyを使って2つの配列の要素が一致している個数を求めました。
配列が2つの場合は上のコードで求まるのですが、
下の様に3つの配列がある場合、全ての配列の要素が一致する個数を求める場合はどうすればよいのでしょうか?

a=np.array([0,1,2,3,4,5])
b=np.array([0,1,2,3,4,6])
c=np.array([4,1,2,3,4,5])
>>4
0577デフォルトの名無しさん
垢版 |
2018/02/27(火) 00:48:09.81ID:FXmriiXi
できるだけ、forやifなどを使わない簡単な方法を探しております。。。
よろしくお願いします。
0579デフォルトの名無しさん
垢版 |
2018/02/27(火) 01:09:04.37ID:Rrp6rDyp
>576

numpyは使ったことないから、リファレンス見ながら適当に書いた。
a==b==cだとエラーになるので、a==bとb==cをlogical_andでつないだら動いた。

print(np.sum(np.logical_and(a == b, b == c)))
0580デフォルトの名無しさん
垢版 |
2018/02/27(火) 01:16:19.46ID:FXmriiXi
>>579
ありがとうございます。
自分も a==b==c でエラーがでて困ってました。
とても助かりました。
0581デフォルトの名無しさん
垢版 |
2018/02/27(火) 07:33:45.62ID:WS3TaZ0C
>>577
forやif使う方が(作るのは)簡単なんだけど…
お前、自分でどうにかする気全くないってことじゃん
0582デフォルトの名無しさん
垢版 |
2018/02/27(火) 07:52:03.09ID:ckmPPEEZ
(作るのは)
どこでこんな括弧の使い方教えとんねんwww
0583デフォルトの名無しさん
垢版 |
2018/02/27(火) 08:47:20.59ID:4ixkfDNT
学校(幼少期の)だよ
0585遊園地
垢版 |
2018/02/27(火) 10:59:17.74ID:gK8Y9TGp
思った以上に難しいな。
発狂モードで、人から聴きながら、公式ドウキュメントと睨めっこ
してるけど、未だに熟考してるな。

defaultdict
items()

https://ideone.com/rbwrKz
0586デフォルトの名無しさん
垢版 |
2018/02/27(火) 11:05:15.46ID:FXmriiXi
>>581
forやifを使う方法なら自分でも分かるので。。。
コードがシンプルで動作が早いものを求めてました。
賢いあなたなら素晴らしい解決策をご存知では?
0588遊園地
垢版 |
2018/02/27(火) 11:09:43.96ID:gK8Y9TGp
結合前のindexが有るから適当に逆算して。
データが最後まで欲しいなら んぐぅうううーーー ::

defaultdict
lambda
enumerate
append
0591遊園地
垢版 |
2018/02/27(火) 12:16:23.97ID:gK8Y9TGp
おちんぽっぽ  おちんぽっぽ

   ぶひひいいいいいいいいいいいいいいいい

l=[[100,50,250,300],[101,20,150,150],
[101,30,200,150],[102,80,100,200]]

r=[]
for i in l:
□r.append(['ID_'+str(i[0]),i[1:3]])


from collections import defaultdict
d = defaultdict(lambda :[[], []])


for i, j in enumerate(r):
□d[j[0]][0] += [j[1]]
□d[j[0]][1] += [i]


for key in sorted(d):
□print(key,d[key])
0592遊園地
垢版 |
2018/02/27(火) 12:35:38.76ID:gK8Y9TGp
エクセル仕様の縦配列ならpandasなんだけどなー。

l=[[100,50,250,300],[101,20,150,150],
[101,30,200,150],[102,80,100,200]]

1列目:商品コード
2列目:数量
3列目:仕入金額(単価)
4列目:販売金額(単価)

print(list(zip(*l)))
[(100, 101, 101, 102),  商品コード
(50, 20, 30, 80),  数量
(250, 150, 200, 100),  仕入金額(単価)
(300, 150, 150, 200)  販売金額(単価)]

import pandas as pd
df = pd.DataFrame(
{
'id':['ID_100','ID_101','ID_101','ID_102'],
'数量':[50,20,30,80],
'仕入金額_単価':[250,150,200,100],
'販売金額_単価':[300,150,150,200]
}
)
print(df)
0594遊園地
垢版 |
2018/02/27(火) 12:49:34.98ID:gK8Y9TGp
キーワードに関する文法を覚えて、高校までの数学A,B,C &適当なフレームワークとモジュール
0595遊園地
垢版 |
2018/02/27(火) 12:56:52.38ID:gK8Y9TGp
基本の文法が理解できてるなら、
>>591
の解説を俺の代わりにしといてクレ |д゚)チラッ

□ は インデント
0596デフォルトの名無しさん
垢版 |
2018/02/27(火) 12:57:32.12ID:Icbybavp
遊園地さんへ
defaultdictにlambdaを渡せば、長さ固定で0初期化したリストを初期値に出来るっていうのは、初めて知りました。
参考にして作ったコードが、こちらです。
https://ideone.com/Y8yQsm
0597遊園地
垢版 |
2018/02/27(火) 14:09:26.24ID:gK8Y9TGp
中途半端な数学とあやふやな日本語表記だったから、もっとできない奴だと思ってた。
遊園地 より お前の方が 上だな。


通常運営に戻るかwww

 おちんぽっぽ おちんぽっぽ

ぶひひいいいいいいいいいいいいいいいいwwwwww

( ゚д゚)ハッ! ┌(_Д_┌ )┐

     ( ゚д゚)ハッ! ┌(_Д_┌ )┐

ヘ(゚∀゚ヘ)アヒャ  φ(..)メモメモ
0598デフォルトの名無しさん
垢版 |
2018/02/27(火) 18:51:07.34ID:QPaDq+KZ
ここですか
0599444
垢版 |
2018/02/27(火) 18:59:22.39ID:QPaDq+KZ
>>1
O2
やっとこさわかった
0600デフォルトの名無しさん
垢版 |
2018/02/27(火) 20:02:12.99ID:668fk3cP
>>562は煽りのおかげで自己解決しました
サンクス
0601デフォルトの名無しさん
垢版 |
2018/02/27(火) 22:39:14.30ID:ckmPPEEZ
>>600
煽って欲しくなったらまたいつでも来な
俺達はいつもここに居るぜ
0602遊園地
垢版 |
2018/02/28(水) 09:37:18.44ID:81tKqnQ0
(ずっと初心者のままって事だから)「居たら駄目だろw」
0603デフォルトの名無しさん
垢版 |
2018/02/28(水) 10:57:25.07ID:8lfCgpCk
Pyton始めて触ったけどなんか楽しい
C#は凄くつまらないけどこれはなんか楽しい
0604デフォルトの名無しさん
垢版 |
2018/02/28(水) 12:36:21.50ID:A/91+nvq
残念ながらPython使いにはC#好きが多いらしいぞ
つまり君はPythonに向いてない可能性がある
0605デフォルトの名無しさん
垢版 |
2018/02/28(水) 13:28:16.40ID:FB6O8UTn
コンパイルや型宣言が迂遠に思うとかなら型宣言のなさが口惜しくなる時も…
(制約は実行時チェックだから遅くなるし、numbaとかはimportコスト高いし
でも日曜プログラミングには最適。C#はお堅すぎてC++の方が好きだが、開発効率でC#
0606デフォルトの名無しさん
垢版 |
2018/02/28(水) 14:07:22.37ID:q5eChUM3
pycharmでプログラム書いて、
後から弄ってたりすると、
失敗することが多いのですが、
失敗する前には、戻せないですよね、
書いたプログラムを、万一に備えてバックアップとかしてますか?
バックアップする場合はどうやるといいでしょうか?
0607遊園地
垢版 |
2018/02/28(水) 14:11:34.30ID:81tKqnQ0
任意の開発環境のテキストエディター

右クリックで[元に戻す]
もしくは、メニューから戻れよな。
0608デフォルトの名無しさん
垢版 |
2018/02/28(水) 14:20:29.71ID:q5eChUM3
>>607
ありがとお、
英語だから読めなかったけど、
ツールバーのEditのところに、
Undoっていのあって、押してみたら元に戻った、
PC壊れた時のための、
バックアップとかはしなくても、大丈夫かな?
0609デフォルトの名無しさん
垢版 |
2018/02/28(水) 15:17:54.83ID:sMQ4/p2k
pycharm って日本語化プラグイんがあったはずだからそれ入れてみたら?
もちろん自己責任で

って言うか、初心者ならIDLE でいいと思うけどなぁ
0610デフォルトの名無しさん
垢版 |
2018/02/28(水) 15:31:59.71ID:72oZA9I7
昨日pythonをはじめたばかりの俺が言うのも何だけど
IDLEはリドゥの機能が最低限文化的な水準じゃないすぎると思うの
0611デフォルトの名無しさん
垢版 |
2018/02/28(水) 17:46:56.48ID:F8/eMdWm
>>608
うどん
0613デフォルトの名無しさん
垢版 |
2018/02/28(水) 19:39:47.11ID:6WnrRHIY
>>608
このスレの経験が長い俺から一言だけ助言させてもらうけど
5chでgit勧めるやつはキチガイかバカだから>>612は無視する事を勧める
0615遊園地
垢版 |
2018/02/28(水) 21:05:43.63ID:81tKqnQ0
gitから好きなソフト入れろって事だなw
0617デフォルトの名無しさん
垢版 |
2018/02/28(水) 21:11:36.61ID:Dbfz2UG/
>>606
Pythonに限らず、プログラミングではバージョン管理するものだと思う
個人で開発する分にはgitでもsubversion でも好きなの使えばいいと思うよ
0618デフォルトの名無しさん
垢版 |
2018/02/28(水) 21:15:16.83ID:6WnrRHIY
>>617
超初心者スレでわけのわからんもん勧めるなキチガイ
0620デフォルトの名無しさん
垢版 |
2018/02/28(水) 21:26:02.07ID:6WnrRHIY
>>619
初心者未満は質問だけしてろ
0622デフォルトの名無しさん
垢版 |
2018/02/28(水) 21:32:52.78ID:6WnrRHIY
>>621
世の中の99%のコードはバージョン管理など必要ない
0623デフォルトの名無しさん
垢版 |
2018/02/28(水) 21:45:13.43ID:R7Cjm0oP
Pythonの関数やライブラリもよう覚えられんのに
gitのコマンドなんか覚えてる暇ないわ
0625デフォルトの名無しさん
垢版 |
2018/02/28(水) 21:49:46.54ID:1ock86up
デバックのこと考えるとVisual Studio が使いやすいな
まあ慣れてるだけかもしれんが
0626デフォルトの名無しさん
垢版 |
2018/02/28(水) 21:51:53.14ID:RqbzVfd9
型宣言があったほうが他人のコードは読みやすい
pythonでコード書くなら変数の型が予想付きやすいようにコードを書くべきではある
0627遊園地
垢版 |
2018/02/28(水) 22:04:25.10ID:81tKqnQ0
等と発言しているが、作業所はゴミ箱のpythonふぁいる
変数名は、unko_A001 unko_B002 geri_a___ hoge hage などを多様
そして、全てローカル定数[任意]だなww
0628デフォルトの名無しさん
垢版 |
2018/02/28(水) 22:06:33.39ID:81tKqnQ0
うんこ あ お お イ
unko_A001

うんこ ぶ おお とぅ!!
unko_B002

げり あ!(はっ?)
geri_a___

ほげ
hoge

はげ
hage
0629デフォルトの名無しさん
垢版 |
2018/02/28(水) 22:40:32.28ID:P/LuZq3k
>>621
5chのpythonスレに来る連中はバージョン管理が必要なレベルにない奴が圧倒的に多いだろ
なんせ超初心者レベルなんだから
0632デフォルトの名無しさん
垢版 |
2018/02/28(水) 22:48:27.55ID:6WnrRHIY
>>630
じゃあいいんじゃん
初心者だもの
人間だもの
0636デフォルトの名無しさん
垢版 |
2018/02/28(水) 23:30:47.09ID:P/LuZq3k
ここは低レベルの奴が質問・雑談しに来るような場所で
それなりにレベルの高い奴が来る所ではないからな。
0638デフォルトの名無しさん
垢版 |
2018/03/01(木) 07:58:57.60ID:VVq/rJJC
バックエンドでwebsocketからブラウザに投げるデータを作るクラスがあって、データを取得後
def _wrap(self, event, data):
 return {"event": event, "data": data} # 実際はもっと複雑
のような決まった形式のdictへ変換するメソッド(複数の場所から呼び出される)を定義しているのですが、
pycharmではselfにアクセスしていないのだからstaticにしろと注意されます。
それで検索してみると、そもそもインスタンス変数などデータに関わらないメソッドはオブジェクト指向的ではないという意見もあるようです。
ただ、メソッドの内容的には明らかにそのクラス内からしか呼びません。

こういう一続きの処理は、python的にはとりあえずモジュール直下の関数として作るべきですか?
そもそもデータと紐付かない関数を切り出したくなること自体設計がアレなんでしょうか?
0639デフォルトの名無しさん
垢版 |
2018/03/01(木) 09:14:31.71ID:bUfJPuYl
>>638
俺ならモジュール直下に置く
Pythonのカプセル化はクラスではなくモジュール単位でやるのが基本
モジュール内ではガバガバのクソビッチでいい
0640デフォルトの名無しさん
垢版 |
2018/03/01(木) 09:37:04.40ID:VVq/rJJC
>>639
モジュール直下にクラスと定数以外を置くのが適切かどうか悩むことが多かったですが
これからは気軽に置くようにします。pythonのお作法がわかってよかったです
どうもありがとうございました。
0641デフォルトの名無しさん
垢版 |
2018/03/01(木) 11:03:47.92ID:hHTnps11
なんで最近基地外が多いの?
春だから?
0642デフォルトの名無しさん
垢版 |
2018/03/01(木) 12:24:11.47ID:JMSSJNyJ
キチガイ多くないし春でもないけど何言ってんのコイツ?
0644デフォルトの名無しさん
垢版 |
2018/03/01(木) 12:30:58.01ID:g6gL+Dqd
>>639
マジで?それPEP何番にかいてあるの?


>>640
いやいやクラス内でしか使わない関数なら@staticmethodのデコレーダー付けるのが普通
0645デフォルトの名無しさん
垢版 |
2018/03/01(木) 12:59:05.81ID:6xtVGUHj
遊園地とか愛知県はキチガイだと思うが、最近湧いたわけではないから
641が言ってるキチガイはまた別の人物だろう
0646遊園地
垢版 |
2018/03/01(木) 15:11:30.80ID:nBJ7HcZv
と言う事は、愛知県以外は何らかの
基地だな。
0647遊園地
垢版 |
2018/03/01(木) 15:19:20.01ID:nBJ7HcZv
因みに発狂50%ぐらいだな。
煽りチェインさせたら、誘発するからな。
次の書き込みは慎重に行けよ。
0648デフォルトの名無しさん
垢版 |
2018/03/01(木) 17:34:59.59ID:MZ35qcw/
>>644
標準ライブラリのソース見たら大抵ガバガバだぞ
そもそも、クラス単位でカプセル化しなきゃいけないような大きなモジュールを書くな
0650デフォルトの名無しさん
垢版 |
2018/03/01(木) 18:33:00.59ID:5P8YUW6k
>>638
@staticmethod にしたくない理由は?
0651デフォルトの名無しさん
垢版 |
2018/03/01(木) 20:09:07.80ID:AveIjfm9
>>650
@staticmethod にしたい理由は?w
0653デフォルトの名無しさん
垢版 |
2018/03/01(木) 20:57:14.76ID:89q4womh
>>582
超ロングパスだけど笑えるw
変な括弧使う人って50代以上に多いんだよね
当時の小学校の国語教育に問題ありそう
0655遊園地
垢版 |
2018/03/01(木) 22:17:49.13ID:nBJ7HcZv
クラスの使い方 分かんねぇ

  どういう 事なNNSA?


関数の纏まり(クラス)? →外部クラスの特定の関数の呼び出し方を
教えてください。
0657デフォルトの名無しさん
垢版 |
2018/03/01(木) 22:44:07.93ID:bqTIn2Eg
クラスは超初心者用スレのレベルをはるかに超えているかな
だからだろうがクラスの質問はほとんど出ないし、クラスが分かる奴もほとんどいないだろ
0659デフォルトの名無しさん
垢版 |
2018/03/01(木) 22:53:09.93ID:AveIjfm9
そんな時でも@staticmethodがあれば安心wwww
0660遊園
垢版 |
2018/03/01(木) 23:05:33.47ID:nBJ7HcZv
Hello world




class MyClass():
_def __init__(self, message):
__self.value = message

myinstance = MyClass("Hello!")
print(myinstance.value)
0661デフォルトの名無しさん
垢版 |
2018/03/01(木) 23:08:11.07ID:bqTIn2Eg
>>658
プログラム言語がさっぱりわからん奴がpythonするニダと来るのがここだろ

クラスわかるような奴なら基地にして超低脳でいつまでも超初心者の遊園地の
>>657の質問にびしっと答えてくれるだろうが
俺は超低脳で分からんが
0662遊園地
垢版 |
2018/03/02(金) 00:22:23.59ID:gI5cLBmc
言い訳は良いから、お前の見解を聞かせろよな
0663デフォルトの名無しさん
垢版 |
2018/03/02(金) 16:35:32.19ID:cPd5BP4r
勉強のためにアナコンダを入れたんだけどプロンプトしか表示されない…
ナビゲーターとやらはどこにあるの…
0665遊園地
垢版 |
2018/03/02(金) 19:07:04.90ID:gI5cLBmc
環境が分かんないから、なんとも言えないが
linuxだと、[こんだ]入れてもアイコンやメニュー欄に登録されない。

端末から、
 jupyter notebook

で、起動できる

AnacondaのIDE(Spyder)なら、
端末から、
  spyder

で、起動
0666遊園地
垢版 |
2018/03/02(金) 19:10:05.39ID:gI5cLBmc
個人的には、バックグラウンドで動かした方が良い
spyder &
0667デフォルトの名無しさん
垢版 |
2018/03/02(金) 19:12:25.67ID:ypGJ9h8+
マルチタブ端末エミュレータが普及したからかサンプルコマンドでも滅多に見かけなくなったな&
0669デフォルトの名無しさん
垢版 |
2018/03/03(土) 00:14:20.74ID:e78Pm/+X
swigでC++のクラスをpythonに移植したのですが
辞書のキーとしてC++のクラスを使うと本来同じはずのオブジェクトでもキーの探索に失敗するみたいです。
辞書のキーの比較関数のカスタマイズが必要なのかと思ってますが、
具体的にどのようにしたらよいでしょうか。
0670529=535=570-573
垢版 |
2018/03/03(土) 00:17:20.29ID:dUbmhP9Z
遊園地様
>>574
>>575
>>596

レス遅くなりまして、申し訳ありません。
お手を煩わせ、お騒がせいたしました。
本当にありがとうございました。

pythonはすごく洗練されていて、
それを使いこなせるようになることに憧れます。
一人前のpython使いになれるよう、励みます。
0671遊園地__24
垢版 |
2018/03/03(土) 01:32:26.99ID:9mjwXL/k
おちんぽっぽ様

レス遅くなりまして、申し訳ありません。
右手を煩わせ、お騒がせいたしました。
本当にありがとうございました。

おちんぽっぽ はすごく洗練されていて、
それを使いこなせるようになることに憧れます。
一人前のおちんぽっぽ使いになれるよう、励みます。
0673デフォルトの名無しさん
垢版 |
2018/03/03(土) 19:50:57.29ID:EGCC61FC
ディープラーニグの仕組みって理解する必要ある?
全部ライブラリに任せてブラックボックス化させていいと思う?
0675デフォルトの名無しさん
垢版 |
2018/03/03(土) 19:58:24.34ID:EGCC61FC
>>674
実装するときはライブラリを使う予定ですが、勉強としてnumpyのみで原理を知った方がいいと思いますか?
0676デフォルトの名無しさん
垢版 |
2018/03/03(土) 20:06:08.80ID:I3KxV3WP
ライブラリの枠を超えてカスタマイズしたくなったりしなければライブラリ任せでいいと思うけどね。
普通のプログラマならね。
研究者とかだとまた違うのかもね。
0677デフォルトの名無しさん
垢版 |
2018/03/03(土) 20:08:58.56ID:rNdUW0Qr
やるならまずはディープラーニングより普通に統計学勉強したほうがいいよ
ディープラーニングなんて理論もクソもない経験則の世界なので使う分にはブラックボックスでもいいけど、
その結果がどれだけ意味のあるものなのかを正しく判別できることが大切
0679デフォルトの名無しさん
垢版 |
2018/03/03(土) 20:20:26.60ID:oz5Ycp/G
人に意見求めるばかりのやつは、結局いつまでたっても始められない
まず何でもいいから試してみて、人の意見聞きながら軌道修正していけばいいのに
0680デフォルトの名無しさん
垢版 |
2018/03/03(土) 20:44:59.87ID:rNdUW0Qr
>>676
ディープラーニング関連はソフトウェアエンジニアでない人
(ディープラーニングをする対象の専門家とか)が、
自分の目的のためにプログラミングをしている感じだからな。
対象のことが分かってないと、ディープラーニングで得た結果がどれだけ意味のあるものなのかを正しく判別できないし。
医学系の人がディープラーニングで病名を見つけぞとかをするときに
医学系の知識ないと病名が正しいのかどうかなんて判断すらできないからな。
0685デフォルトの名無しさん
垢版 |
2018/03/03(土) 21:34:04.04ID:lxzWoDph
ID:I3KxV3WP
ID:rNdUW0Qr
ID:oz5Ycp/G
ID:+c9NolkC
こいつらは超初心者というよりも只のバカ
0687デフォルトの名無しさん
垢版 |
2018/03/03(土) 22:03:43.53ID:Yv39lHPZ
3.6ですがリストのprintで[]やコンマなしで出力する方法はないのですか?
x=[0,1,2]
の時に0 1 2と出力したいです
0688デフォルトの名無しさん
垢版 |
2018/03/03(土) 22:03:57.32ID:WopWzyYp
ID:I3KxV3WPは初心者じゃないう
それなりにプログラミングが出来る奴だろう
C++との連携、__hash__ 、__eq__を実装する奴はこのスレのレベルを超えているよな
0691遊園地
垢版 |
2018/03/03(土) 22:54:31.75ID:9mjwXL/k
□ が インデント

class XXX:
□def __init__(self):
□□print(self.x_Surprised())
□x=[0,1,2]
□@classmethod
□def x_Surprised(self):#x_吃驚
□□return self.x

[print(i) for i in XXX.x_Surprised()]
0692遊園地
垢版 |
2018/03/03(土) 23:00:50.92ID:9mjwXL/k
出力結果が違うと言う痛恨の失敗ww
0695デフォルトの名無しさん
垢版 |
2018/03/03(土) 23:30:47.43ID:SiBmpxOC
ラズベリーパイ使ってます
Pythonでprint()文5行ぐらいを0.2秒ぐらいずつ出力するプログラムを書いています
IDLEのShellではスクロールして見づらいので、ラズパイに入っているThonnyのShellだといい感じで見られるのですが
もっと全画面表示にしたり 行ごとに色やフォントを変えて見やすくしたいです。

tkinterというのを使えばできるんでしょうか?調べてもGUIの入力の仕方は書いてあっても変数の出力の仕方がわかりません
0696遊園地_24
垢版 |
2018/03/04(日) 00:10:14.92ID:5if37KxE
まず
print()5行は

def aaa(??):
sleep(0.2)
[print(i) for i in ??]

コンソール画面については、入るか解らないけど、
fabric

インストール[例]   sudo pip3 install fabric
ラズパイOSは触った事ないので不明


tkinterが動くなら、そっちで表示した方が楽だな。
毎回ウィンド消すのが邪魔くさくなる、けどな。
ショートカットキーが使えるなら、それを利用


スクロールが嫌なら値を配列に突っ込んで、配列を表示な。
0697デフォルトの名無しさん
垢版 |
2018/03/04(日) 10:25:14.53ID:/zakn0zk
今年からWinのAnacondaで本格的にPython触り始めたんだけど、Jupyter Notebookがなんで流行っているのかわからない
ブラウザでやりたい人はできるよ!って意味があるだけで、
普通にエディタで書いてコマンドで実行するのが苦にならない人にとって、使うメリットがあるとしたら何だろうか?
0698デフォルトの名無しさん
垢版 |
2018/03/04(日) 10:27:17.22ID:DAVLACwj
なんか使いこなしてる感あるやん
0700デフォルトの名無しさん
垢版 |
2018/03/04(日) 10:52:43.17ID:8KjE9Kl8
あとは多言語とか markdown 組み合わせてそのまま発表資料作れることとかかなー
0701デフォルトの名無しさん
垢版 |
2018/03/04(日) 11:11:49.19ID:NfYAcbTL
コーディングだけならjupyterはやめたほうがいい
エディタとしてはクソ

セル毎に実行できるからデバッグしながらコーディングできるのがメリット
ただ、もともと科学研究での使用を想定しているので、グラフを描いて、そのまま保存できるのが一番のメリット
0702デフォルトの名無しさん
垢版 |
2018/03/04(日) 11:19:45.98ID:4EUNxouc
>>697
pycharm最強だけど
立ち上げるのめんどうな時があるんだよ、でもIDLEでは役不足なときJupyter notebookが活躍する
matplotlibのインライン表示もできて
pandas のdataflameもhtmlで綺麗に表示されるしセルごとコピーして試行錯誤できるしctrl enterでサクッと実行できて Markdownで文書で説明も一緒に保存できるし !をつかえばshellもつかえるから
0703デフォルトの名無しさん
垢版 |
2018/03/04(日) 13:04:37.81ID:tnQSriaY
複数のソース同時進行で動作確認しつつ書く時とか楽だからね
他にも便利なことは無数にあるけど使う人にもよるから、
使ってみて合わなけりゃ他にすればいい
0704デフォルトの名無しさん
垢版 |
2018/03/04(日) 13:07:12.24ID:/zakn0zk
ありがとう
AnacondaにSpyderというのが入っていて起動したらいい感じなのでしばらくこれメインで使ってみます
0706デフォルトの名無しさん
垢版 |
2018/03/04(日) 16:33:18.24ID:bIFflqoZ
業務でVSprofessional使ってるから、家でもcode使わずにVScommunity入れてる
VC++やVC#と同等の強力なデバッガが使えるのは便利
0707デフォルトの名無しさん
垢版 |
2018/03/04(日) 18:05:35.99ID:AsmaTBX4
>>696
ありがとうございます fabricでカラフルにできました!
tkinterでも出来るならもう一度勉強してきます
0708デフォルトの名無しさん
垢版 |
2018/03/04(日) 18:16:30.73ID:zoUnaQGz
ここで聞いていいのかわからないけど質問させてください。
非エンジニアですが、pythonを勉強したいと思ってます。
家族共用のパソコンを買い替える予定があるんですが、pythonを扱う上で最低限これくらいのスペックは必要とかありますか?
OSはWindowsで考えてます。
ちなみに、pythonを始める動機としては、税のシミュレーションサイトを作りたいです。
0714遊園地_24
垢版 |
2018/03/04(日) 20:32:42.53ID:5if37KxE
今使ってるpcで公式ドキュメント読んで、
100均でコピー用紙買ってきたら、良いんじゃねえ?

マジレスだと、
今使ってるPCにpython入れて勉強したら?

自分のやりたい事を試して(コピペ実装でも)したら、
どこまで、スペックが必要なのか自ずと解るもんなんだけどなー。

4,5年前にハードオフで購入した、のーと本体1080円+電源540円 合計1620円のPCで十分だな。[ウィンドウズじゃないけどな。] Kona linux 2.3  とかなーw

静的グラフ作成なら必要ないけど、動的グラフなら GPU積んでないとダメだな。
0715遊園地_24
垢版 |
2018/03/04(日) 20:39:45.38ID:5if37KxE
webサイトなら、jsで良いと思う。
pythonなら、ボトルとか言うネタフレでも入れとけよ。

今すぐpython入れてボトル拾って来たら
20分もしない内にhello world表示できるな。
0716デフォルトの名無しさん
垢版 |
2018/03/04(日) 21:31:52.48ID:zoUnaQGz
レスありがとうございます。

>>710>>713-714
あんまスペック必要ないってことで理解しました。
いまのデスクトップを処分して、ノートに買い替えることは確定してるので、せっかくなら不自由しない程度のスペックをと思って質問してみました。
>>711
データ処理的な面で仕事にも活かせそうということと、VBAの次のステップとしてもいいかなーと。
>>715
ネタフレってことは、bottleはあまり評判良くないんですか?
0717デフォルトの名無しさん
垢版 |
2018/03/04(日) 22:24:37.53ID:5if37KxE
pythonでwebフレームワークなら、九分九厘とは言わないまでも、
7,8割は Django



話を聞く限りだと、winで業務効率化なら
C#とpython

Microsoft Visual Studio と考えるなら
CPU i5以上[第4世代以降] 4コア メモリ8G
ぐらいだな。

メモリが4gだと ソフト常駐中に がちゃがちゃ っとした時に
不安だな。 と言うかフリーズで再起動必須だぞ。


その他
ノートはグラボついて無い奴が多いからなー。
0718デフォルトの名無しさん
垢版 |
2018/03/04(日) 23:02:30.41ID:24V4/Iiw
Webサイト作りたいならPHPの方がいいよ
PythonとかRubyとかC#とかでMVCで作るとなると本格的なWebプログラミングになってしまって、
半端な知識でやるとヘタしたら事故って家に警察くるよ
0720デフォルトの名無しさん
垢版 |
2018/03/05(月) 00:55:00.41ID:U444NXfL
>>717
ありがとうございます。
ミドルスペック程度のものを買っておけば大丈夫そうですね。
グラボは自分の用途的に必要になるかはわかりませんが、将来の拡張性も含めて検討してみます。
>>718
そういった法的なリスクは考慮していませんでした。ありがとうございます。
MWCが何かはイマイチよく分かりませんが...会員機能などは全く想定していないので、指摘されたようなリスクは低いかなと考えています。(的外れだったらスイマセン)

いろいろと教えていただきありがとうございました。
0722デフォルトの名無しさん
垢版 |
2018/03/05(月) 16:00:23.62ID:62GuhFZ7
開発用PC は、高スペック

CPU はi5、メモリは8GB が最低ライン。
まあ、CPU はi7、メモリは16GB、Windows10 Pro版が無難
0725デフォルトの名無しさん
垢版 |
2018/03/05(月) 20:28:52.85ID:Oh+Rb/cP
>>722
お前自身,pythonで何を開発している?
会社の業務でディープラーニングを使った何かとか?
0728遊園地_24
垢版 |
2018/03/05(月) 21:30:40.57ID:WgwF8A3f
高速化と精度向上を専門家に任せて、
画像検出で遊んでるけどな。

エクセルとテキスト操作できて、画像検出のデータ(数値&物質)
やる事なくて、暇すぎ。

てとぷよ理解できるなら、
2DのGUIぐらいなら、なんとでも成るだろ。

業務でディープラーニングやるなら、pythonなんて使わねぇよ。
信頼度の有る。アジュールやlot使うわ。夢見すぎ。
0730デフォルトの名無しさん
垢版 |
2018/03/05(月) 21:49:02.79ID:Oh+Rb/cP
>>727
WinならGUI部はC#にやらせて機械学習・データ処理部は現最強処理言語のPythonで
とで良いんじゃないのか。C#とPythonを連携させるライブラリあるだろう
と言っても、俺自身はそんなことはできるレベルにはほど遠いが。
なんたってPy2の勉強コードのprintをpy3のprintで動くように手で一つずつ修正しているレベルだからな。
こんなのは超初心者でもpy3のprintに自動変換するpythonスクリプト書いて
自動変換とかするんだろうが
0731遊園地_24
垢版 |
2018/03/05(月) 22:41:07.95ID:WgwF8A3f
>>729
金に糸目をつけなければな。

>>730
ファイル読み込んで、正規表現で加工な。
0732デフォルトの名無しさん
垢版 |
2018/03/05(月) 22:43:51.13ID:RAbUoWuy
パイ兄の性器加工したらパイさんになるって事やな
0733デフォルトの名無しさん
垢版 |
2018/03/05(月) 22:50:57.34ID:Oh+Rb/cP
>>731
それ、どんなコードにすれば
py2のprintコードをpy3で動くコードに変換出来るんだ?
>>728のようなことを書き込む奴なら簡単に出来るんだろうが
0734遊園地_24
垢版 |
2018/03/05(月) 23:55:17.31ID:WgwF8A3f
誰が全部しろって言ったんだよ。自動変換できなかった部分を加工しろ
って事だな。

公式ぐらい読んでから書き込めよ

26.7. 2to3 - Python 2 から 3 への自動コード変換
https://docs.python.jp/3/library/2to3.html
0735遊園地-24
垢版 |
2018/03/06(火) 00:13:29.13ID:UvYphTrh
知らなかったの?
0736遊園地-24
垢版 |
2018/03/06(火) 00:22:33.41ID:UvYphTrh
過去スレに
「自分より優秀な奴が他に実装してない」とか、「自分が初めて考えた。」
などと、驕るな。と、曖昧に書いてるだろ。


ggらずに考えも推測もせずに、手打ちで書き直してるのが一番の問題だけどなww
0737デフォルトの名無しさん
垢版 |
2018/03/06(火) 00:36:32.26ID:eAtg39Ci
>>734
こんな便利なのを提供していたのか、もっと早くきいとけばよかったよ,orz
イライラしながら手打ちで()をいれてたよ
こんなのがあるならPythonのIDEには1発変換機能が装着されているんだろうな
0738デフォルトの名無しさん
垢版 |
2018/03/07(水) 00:49:40.75ID:+FgUTbHT
クラスからインスタンス作る際に
引数をリストで入れることできる?

例えば

class Person:
def __init__(self, name, age):
print '[Person.__init__]'
self.name = name
self.age = age
def showinfo(self):
print '%s (%d)' % (self.name, self.age)

p1 = Person('Ichiro Suzuki', 37)

ここで'Ichiro Suzuki', 37をリストの変数名はできない?
0741デフォルトの名無しさん
垢版 |
2018/03/07(水) 08:28:15.65ID:S7SOUfbr
python 3のIDLEで()や♯をSHIFTキーを押さずに簡単に入力する方法ってありませんか?

気持ちよく文字を打っているときに()や#で毎回止まっちゃって気分悪くて…
0743デフォルトの名無しさん
垢版 |
2018/03/07(水) 09:25:59.85ID:S7SOUfbr
>>742
kとかtとかgとかみたいに、一つのキーを押して()って出したいです
()や#が入るとブラインドタッチ出来なくて…
0744デフォルトの名無しさん
垢版 |
2018/03/07(水) 09:39:20.43ID:Bu0xzM6t
>>741
なんかかなりPython出来る感じだな
そんな奴は自分で特定のソフトでのキー入力を,#はF1キー、(はF2キーとかにするPythonプログラムを作って
常駐させれば良いんじゃない? これなら他のエディタでも出来るようになる
俺はどうすれば実現できるか分からんが、分からない部分はこのスレやPythonクダスレで質問すれば
アドバイス貰えるだろう。
0746デフォルトの名無しさん
垢版 |
2018/03/07(水) 11:14:00.28ID:73e6LWFm
>>743
Shiftに慣れるしかないよ
左小指でShiftを押すのがつらいのなら、キーを入れ替えるフリーソフトで
ShiftとCapsLockを入れ替えれば少しは楽になるかもね
0747デフォルトの名無しさん
垢版 |
2018/03/07(水) 13:53:19.55ID:SxtyIWZu
変な癖を着けるよりタイピングの練習をしろ
まともにプログラム書ける人に記号や数字のブラインドタッチができない奴なんかいないぞ
0748デフォルトの名無しさん
垢版 |
2018/03/07(水) 20:00:30.28ID:SVUFy878
俺はPC歴20年だけどアルファベットはブラインドタッチできるけど数字は若干怪しいw
0749デフォルトの名無しさん
垢版 |
2018/03/07(水) 20:43:06.22ID:rqe653kl
正直、('hello')あたりはだいぶあやしい
英語キーボードに切り替えようかと考えるけど、逆にそれに慣れてしまった後が怖い
0751デフォルトの名無しさん
垢版 |
2018/03/07(水) 20:50:57.14ID:fiBk/l1y
>>749
慣れる前に挫折するから安心しろw
英語配列の()は薬指と小指だぜ?聞いただけで無理だろ?w
0752デフォルトの名無しさん
垢版 |
2018/03/07(水) 21:27:29.92ID:+FgUTbHT
>>740
ありがと
うまくできた

試しに辞書のなかにリストいれて 辞書のキーからインスタンス
つくったら、できた。 この言語、ライブラリ含め柔軟性がエグイな
0753デフォルトの名無しさん
垢版 |
2018/03/07(水) 21:46:51.43ID:rqe653kl
>>751
最上段右小指つかわん
0754デフォルトの名無しさん
垢版 |
2018/03/07(水) 22:30:37.15ID:n5pGfiL2
タッチタイピングの話はあまりにも低レベルなのでやめましょう
そもそもPythonとは関係ないのでスレ違いです
0755デフォルトの名無しさん
垢版 |
2018/03/07(水) 22:34:55.45ID:fiBk/l1y
必死で話をそらそうとするブラインドタッチできない自称上級者がいるスレはここですか?w
0757デフォルトの名無しさん
垢版 |
2018/03/07(水) 22:54:29.90ID:rqe653kl
UIは大事だよ
0758デフォルトの名無しさん
垢版 |
2018/03/08(木) 00:38:24.07ID:lZQLIDsd
思念した脳波スペクトルを検出して、文字入力できるpythonのコード、誰か書いてあげて
0759デフォルトの名無しさん
垢版 |
2018/03/08(木) 03:10:58.82ID:E3emjgTV
python 3.6.3 windows 10環境において、
pyinstallerをpipでインストールした状態でOpencv3モジュールを使ったスクリプトをexe化したいんですが、きちんとコマンドプロンプトでスクリプトのあるディレクトリに飛んで
pyinstaller なんとか.py
みたいに打っても、

>>>内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されていません

と出てなにもしてくれません
どうすれば、exe化出来ますか?
0760デフォルトの名無しさん
垢版 |
2018/03/08(木) 06:42:28.96ID:BqSevK/d
>pyinstaller なんとか.py
pyinstaller は、パス無しのコマンド名で、
このコマンド名の実行ファイルを探すには、探す順序がある。

このコマンド名の実行ファイルが、
探索パス(ユーザー環境変数PATH)に入っていれば探索できる

入っていなくても、コマンド名の実行ファイルを絶対パスで書けば、動く

絶対パス付きpyinstaller(拡張子も付ける) なんとか.py

「windows コマンド 検索 順序」で検索!
0761デフォルトの名無しさん
垢版 |
2018/03/08(木) 10:47:57.81ID:HtPqmhf6
>>730
C++で書こう。
0762デフォルトの名無しさん
垢版 |
2018/03/08(木) 10:48:43.59ID:ue18PqKi
wxWidgets と wxPython の相性いいね
0763デフォルトの名無しさん
垢版 |
2018/03/08(木) 11:31:53.63ID:E3emjgTV
>>760
ありがとうございます

絶対パスを取ってきてやってみたのですが、絶対パスが認識されていませんって出て何もできないです…
訳ワカメ
0764デフォルトの名無しさん
垢版 |
2018/03/08(木) 15:04:35.03ID:57cll93c
ロジックサマナーの筒の中のボールって問題で

a = int(input())
b = list(input())
#print(b)
c = []
for i in range(a):
j = int(i)
if b[j] == "L":
c.insert(0,i + 1)
elif b[j] == "R":
c.append(i + 1)
#print(c)
d = ""
for x in c:
d += str(x)
print(d)

試行錯誤してこんなの書いてみたのですが
これだと答えが

42135

ってなるんですが正解は

4 2 1 3 5

ってしないといけないみたいなんですがどうすればいいですか?
0765デフォルトの名無しさん
垢版 |
2018/03/08(木) 15:09:01.29ID:57cll93c
すいません
>>764の問題は

あなたは筒にボールを収納しています。N 個のボールを筒に入れていきます。筒には左右どちらからでもボールを入れることができ、筒にはちょうど N 個のボールを入れることが出来ます。

筒に i 回目に入れたボールには i という番号を振ります。

それぞれのボールを右から入れたか、左から入れたかが与えられる時、筒に入っているボールの番号を左から順に出力するプログラムをつくりましょう。

というもので

入力される値は

5
LLRLR

です
0766デフォルトの名無しさん
垢版 |
2018/03/08(木) 15:44:13.25ID:57cll93c
インデントが消えてましたすいません

a = int(input())
b = list(input())
#print(b)
c = []
for i in range(a):
____j = int(i)
____if b[j] == "L":
________c.insert(0,i + 1)
____elif b[j] == "R":
________c.append(i + 1)
#print(c)
d = ""
for x in c:
____d += str(x)
print(d)
0767デフォルトの名無しさん
垢版 |
2018/03/08(木) 16:56:22.26ID:G4fiO8Mm
しょうもない
' '.join()でもやっとけ
たぶんエラーになるけどそのくらい自力で解決しろ
0769デフォルトの名無しさん
垢版 |
2018/03/08(木) 17:54:28.22ID:XBRt2eF2
print(*c)
で、スペース区切りでリストcが表示されるよ

あと、リストの両端から要素を追加するなら、リストでなくて、dequeを使うべき。collectionsライブラリに入ってる。
N回追加するとして、リストだと計算量がO(N^2)、dequeならO(N)で済む
0770デフォルトの名無しさん
垢版 |
2018/03/08(木) 18:44:19.26ID:E3emjgTV
>>760
環境変数に絶対パスを突っ込んでもダメでした
もうだめだー
他のモジュール探してきます
0771デフォルトの名無しさん
垢版 |
2018/03/08(木) 19:33:10.41ID:fVm8GBjs
>>768
この場合は問題文はの理解はどうでも良いんだよ
単に、正解の出力フォーマットにする仕方が分からんと言うだけ
0773デフォルトの名無しさん
垢版 |
2018/03/09(金) 00:18:12.93ID:2PlJUe+0
>>770
もう一回調べ直してやってみたら無事に出来ました
半日ずっと悩んでた…
初心者にしてはそこそこのコード量を書いたと思うので、完成してめちゃくちゃスッキリです

ありがとうございました
0774デフォルトの名無しさん
垢版 |
2018/03/09(金) 18:23:05.36ID:9PFeid8J
Python 3.4.2
IDLE 3.4.2

>>> a = 0
>>> if a == 0:
print("0ですが何か?")
print("0ではないです")
SyntaxError: invalid syntax

なぜかシンタクス・エラー。
このコードに何か問題がありますか?
教材にこういう書き方が載っていて。
もちろんこうすればいいんですが。

>>> a = 0
>>> if a == 0:
print("0ですが何か?")
else:
print("0ではないです")

0ですが何か?
0775774
垢版 |
2018/03/09(金) 18:25:09.02ID:9PFeid8J
わぁ、インデントに失敗。
シンタクス・エラーが出たコードの
2つめのprint文はインデントしてないです。
0776デフォルトの名無しさん
垢版 |
2018/03/09(金) 18:32:28.71ID:pN88KEeM
print("0で" + ("すが何か?" if a == 0 else "はないです"))
0777デフォルトの名無しさん
垢版 |
2018/03/09(金) 18:33:24.64ID:pN88KEeM
>>775
改行が足りないだけじゃね
0778デフォルトの名無しさん
垢版 |
2018/03/09(金) 18:38:40.01ID:TIzFZI0J
他言語の
if (a == 0) {
print("0ですが何か?");
}
print("0ではないです");
みたいなことしたいならpythonでは}の替わりに空行必要だろif文そこで終わりなんだから
0779デフォルトの名無しさん
垢版 |
2018/03/09(金) 20:56:35.87ID:9i/ypX3d
改行なしで一行に何万もの文字がつながってしまってるテキストに
固定桁位置(例えば100)ごとに改行を入れたいのですが
Pythonだとどんなアプローチがありますかね

自分の知識だと、全部をリストに読み込んでから
こんなアルゴリズムで改行を挿入していく感じになりますが、いかにも遅そうで・・・
for i in range(100,ファイルサイズ,100):
....リスト[i] = '\n'
0780デフォルトの名無しさん
垢版 |
2018/03/09(金) 21:03:45.39ID:PDjaIyJx
何万文字だったらすぐに終わるでしょ
試してないけど
約40万文字のcsvファイルの書き直しでも、
すぐに終わった記憶がある
0781デフォルトの名無しさん
垢版 |
2018/03/09(金) 21:11:11.46ID:7JkYQc+0
>779
そのやり方だと100文字目毎に改行が挿入されるのでなく
100文字目毎に1文字分のデータが改行に上書きされていくよ

文字列に読み込んだあと、
結果を100文字ごとにリストresultに追加していって、あとで'\n'.join(result)して連結したらいいんじゃないかな

src = ファイル読み込む
result =[]
for i in range(0, len(src), 100):
....result.append(src[i:i+100])
final = '\n'.join(result)

src[i:i+100]のところは、最後にout of range エラー出ないように微修正が必要かも。
0782デフォルトの名無しさん
垢版 |
2018/03/09(金) 21:35:31.43ID:Ohyjj+7n
>>779
対象がファイルでスケーラビリティも考慮するなら
テキストIOはバイト数ではなく文字数で読み出せるので
普通にread(桁数)とかでも。細粒度でもバッファが有るし

等幅にもしたいとかだと単純にはいかなそうだけど
0783デフォルトの名無しさん
垢版 |
2018/03/09(金) 21:55:08.94ID:9i/ypX3d
ありがとうございます
リストに[i]ってして書き込むと挿入じゃなく上書きなんですね
ファイルをぶっ壊すところでした
>>781,782の両方試してみます
0784デフォルトの名無しさん
垢版 |
2018/03/09(金) 21:57:08.86ID:7BdIhTLZ
プログラムを実行してCPUが1つも使用率100%にならないのに時間がかかるのはなぜでしょうか
0787デフォルトの名無しさん
垢版 |
2018/03/09(金) 23:24:51.20ID:Hm9dMP5O
質問です
windows10 python3.6を使っています
windowsのコマンドプロンプトにてexeファイルを起動して
pythonでそのexeファイルの出力データを使おうとしていますが
「指定されたファイルがありません」というエラーが出てしまいます。
どうすればよいのでしょうか?


cmd= 'cd C://aaa// & C:/bbb//ccc.exe'
subprocess.call(cmd)

cmdの中身をコピペしてコマンドプロンプトに入力すると
普通にccc.exeは動くのでファイルがないわけではないようなのです。
ひょっとして「&」の文字が特別な書き方をしないといけないのかなと思いましたが
検索しても「&」なだけに普通の演算子の説明ばかりに見つけてしまいます
0788デフォルトの名無しさん
垢版 |
2018/03/09(金) 23:30:24.74ID:D+XJ/Fb8
aaaの前のスラッシュは2重なのにbbbの前のスラッシュは1重なのは構わないのか?
0789787
垢版 |
2018/03/09(金) 23:40:35.92ID:Hm9dMP5O
>>788
すいません、コピペミスです。
cmd= 'cd C://aaa// & C://bbb//ccc.exe'
プログラムの中身はちゃんとスラッシュ2重になってましたがエラー出ます
0791787
垢版 |
2018/03/10(土) 00:14:25.60ID:z+JhxfBR
>>790
ありがとうございます
cd 単体でやってみたら同じエラー出ました!
dirとかも同じくできませんでした
cdのほうはpython側でos. chdir (path)でやったら動くようになりました
お騒がせしてすいませんでした!!!!
0792デフォルトの名無しさん
垢版 |
2018/03/10(土) 00:26:28.61ID:eRBFpMoV
コマンドプロンプトを起動させるコマンド?のcdの後にあるC://aaa// は何?
cd C://aaa// でC://aaa// でコマンドプロンプトを起動しろなのか?
0793デフォルトの名無しさん
垢版 |
2018/03/10(土) 00:28:24.97ID:CYNPOxqI
>>791
subprocess.callは文字通りサブプロセスの起動なのでos.systemとは違う
同じ事がしたければshell=Trueで使うか、cmdを起動して標準入力に流す
0794デフォルトの名無しさん
垢版 |
2018/03/10(土) 02:30:00.51ID:TOuqOzip
[2,3,2,2]を変換して作成した[2,2,3,3,3,2,2,2,2]という
自身の数だけ連続した数字のリストがある(変化前のリストはもう無い)
それをループするかなにかして[“a”,“b”,“c”,“d”]というリストを[“a”,“a”,“b”,“b”,“b”,“c”,“c”,“d”,“d”]とやりたいんだけど、なんかどうしてもズレてしまって上手くいかない
どう書いたらいいか教えてください
0795デフォルトの名無しさん
垢版 |
2018/03/10(土) 03:00:35.56ID:uUYTpCvs
なんでそんな不自由なことになってるのか分からんけど
こんな感じだろうか

seq = [2,2,3,3,3,2,2,2,2]
vals = ["a", "b", "c", "d"]
res = []
p = 0
for x in vals:
 n = seq[p]
 p += n
 res += [x] * n
print(res)
0796デフォルトの名無しさん
垢版 |
2018/03/10(土) 03:01:50.95ID:mWXHA15B
alice = ["a","b","c","d","e"]
bob = [2,3,2,2]
charlie = []
for i in range (len(bob)): charlie = charlie + [alice[i]]*bob[i]

aliceは手打ちしたが別解はいろいろある
0797デフォルトの名無しさん
垢版 |
2018/03/10(土) 03:29:39.83ID:mWXHA15B
bob = [2,2,3,3,3,2,2,2,2]の場合

dave = []
elen = 0
for i in bob:
[tab]if elen > 0: elen -= 1
[tab]else:
[tab][tab]elen = i - 1
[tab][tab]dave.append(i)

によってdave = [2,3,2,2]を得る
bob = [2,2,3,1,3,2,2,2,2]とかの場合を考慮してないつくりだがまあそれで
0798デフォルトの名無しさん
垢版 |
2018/03/10(土) 05:59:02.22ID:L0iyZELB
>>789-792
cmd= 'cmd /K cd C://aaa// & C://bbb//ccc.exe'
0800デフォルトの名無しさん
垢版 |
2018/03/10(土) 20:51:25.89ID:8UYoJO3F
まず、ある整数n を取得して、インデックスをnだけ後ろにずらす、関数を作る

idx = 0 で、n = 2 なら、idx = 2 になる。
idx = 2 で、n = 3 なら、idx = 5 になる。
idx = 5 で、n = 2 なら、idx = 7 になる
0801遊園地-24
垢版 |
2018/03/10(土) 21:43:15.33ID:EzpQRtOJ
なんで、皆ww

  そんなに難しく、するんだよww

>>794

a=["a","b","c","d","e"]
b=[2,3,2,2,5]

l=[[a[i]*b[i]] for i in range(len(a))]



print(l)
0804遊園地-24
垢版 |
2018/03/10(土) 22:05:03.97ID:EzpQRtOJ
括弧もはずせない。とか、言わないでね。

l=[a[i]*b[i] for i in range(len(a))]
0805遊園地-24
垢版 |
2018/03/10(土) 22:13:41.16ID:EzpQRtOJ
要するに、コレができないとか?


a=['a','a','b','b','b','c','d','d','d']


from collections import Counter


print(Counter(a))
print(Counter(a).most_common())
0806遊園地-24
垢版 |
2018/03/10(土) 22:16:10.76ID:EzpQRtOJ
どう?
a=['a','a','b','b','b','c','d','d','d']


from collections import Counter

l=[i[0]*i[1] for i in Counter(a).most_common()]

print(sorted(l))
0808遊園地-24
垢版 |
2018/03/10(土) 22:22:52.05ID:EzpQRtOJ
なるほど。
数字だと、ズレるんだな。

from collections import Counter

a=[2,2,3,3,3,2,2,5,5,5,5,5]
l=[str(i[0])*i[1] for i in Counter(a).most_common()]

print(sorted(l))

['2222', '333', '55555']
0809遊園地-24
垢版 |
2018/03/10(土) 22:24:38.46ID:EzpQRtOJ
>>807
それならw 完璧なjコードを どうぞ
0810遊園地-24
垢版 |
2018/03/10(土) 22:28:07.39ID:EzpQRtOJ
お前には期待してないけどなww
0811800
垢版 |
2018/03/10(土) 23:05:38.70ID:8UYoJO3F
次のインデックスを求める。
引数には、今のインデックスとその値(数字)を渡す。
例えば、今のインデックスが0 で、値が2 なら、次のインデックスは2 になる

仕様は、
>>800
を参照

def nextIndex(index, value):
return index + value
0812デフォルトの名無しさん
垢版 |
2018/03/10(土) 23:47:45.10ID:Fc7JY5v5
シリアル通信でセンサーから値を読み取って、それをcsvファイルに出力しているのですが、
ファイルをクローズするタイミングをどう設定したら良いのか分かりません

出来れば、あるキーを入力したら出力のループを止めてファイルをクローズしたいのですが、どうすれば良いのでしょうか?
0813800
垢版 |
2018/03/10(土) 23:57:22.01ID:8UYoJO3F
Ruby で作った。
まず、ある整数n を取得して、インデックスをnだけ後ろにずらす、関数を作る

idx = 0 で、n = 2 なら、idx = 2 になる。
idx = 2 で、n = 3 なら、idx = 5 になる。
idx = 5 で、n = 2 なら、idx = 7 になる

次のインデックスを求める関数。
引数には、今のインデックスとその値(数字)を渡す。
例えば、今のインデックスが0 で、値が2 なら、次のインデックスは2 になる

def nextIndex(index, value)
return index + value
end

numbers = [2,2,3,3,3,2,2,2,2,1]
results = []
idx = 0

loop do
if idx >= numbers.length
break
else
results.push numbers[idx]
end
idx = nextIndex(idx, numbers[idx])
end

p results #=> [2, 3, 2, 2, 1]
0816デフォルトの名無しさん
垢版 |
2018/03/11(日) 03:14:18.88ID:wp7Weqk4
>>> nums = [2,2,3,3,3,2,2,2,2,1]
>>> o = []
>>> while True:
... try:
... s = nums[0]
... o.append(s)
... nums = nums[s:]
... except:
... break
...
>>> o
[2, 3, 2, 2, 1]
0818774
垢版 |
2018/03/11(日) 06:18:52.46ID:v8KZNHMy
助言くださった方、有難う御座いました。
SyntaxError: invalid syntax
は対話型のコンソール上でのみ発生し、
.pyファイルにソースコードを保存して実行する方法では発生しませんでした。
0819デフォルトの名無しさん
垢版 |
2018/03/11(日) 09:55:22.45ID:zWe+i43K
>>818
インタプリタの場合だけインデント戻すときに空の改行が必要
ソースファイルから実行するときは空の改行無くてもインデントが終わってることが判るから不要
0820デフォルトの名無しさん
垢版 |
2018/03/11(日) 10:41:33.75ID:wWFsao1Q
>>817
あ、withって途中でプログラムを止めてもクローズするんですね…
ありがとうございます!
0821デフォルトの名無しさん
垢版 |
2018/03/11(日) 10:51:42.96ID:zWe+i43K
closeされる順番って保障されるんだっけ
0822デフォルトの名無しさん
垢版 |
2018/03/11(日) 10:59:10.09ID:lK5925v1
あれ…csvに書き込めないぞ
ループ無しなら書き込めたんですが、ループを入れた途端だめみたいです
ループがダメなのか
0823遊園地-24
垢版 |
2018/03/11(日) 11:47:24.74ID:jUiHYj3b
抽象的で意味が解らない。
何を書き込んで、何をループしようとしたのか?
0824デフォルトの名無しさん
垢版 |
2018/03/11(日) 12:12:25.49ID:iE5voU0A
エスパー以外にも分かるように書いてほしいけれど
ありがちなのはループ内でファイルを追記じゃなくて
上書きで開いてるせいで書き込んだ内容が消えてるか、
ループを実行しているつもりで実は一回も実行されてないとかかな。
0825遊園地-24
垢版 |
2018/03/11(日) 13:29:12.00ID:jUiHYj3b
一文字違いの電源刺して無かったわー。あー。
道穴か。

a  か  a+

だなw
0826遊園地-24
垢版 |
2018/03/11(日) 14:28:38.15ID:jUiHYj3b
dqbで秘湯の設計図が見つからん。

  パーツを組み合わせて登録するシステムはよぉおお
0828デフォルトの名無しさん
垢版 |
2018/03/11(日) 15:41:22.42ID:E+gYlGPD
業務で使うことになってpythonの勉強始めた
みんなのpythonってテキスト見ながら進めてまだ最初の文法の書き方のところなんだけど何か簡単な物で良いから形にしたくなって来た
みんなは最初はどんなアプリを作って勉強した?
0831デフォルトの名無しさん
垢版 |
2018/03/11(日) 16:38:50.25ID:E+gYlGPD
>>829
ゲームなら取っ付きやすそう
探してみます

>>830
C#をかじったことがあります
基本的な文法なら理解出来ていると思います
0832遊園地-24
垢版 |
2018/03/11(日) 16:40:37.00ID:jUiHYj3b
緑の方だったのか。どうもありがとう。

  四則演算ができて、Hello worldが出力できるなら次へ。


エクセルデータ纏めて、マクロ化したれや。
0833遊園地-24
垢版 |
2018/03/11(日) 16:45:34.16ID:jUiHYj3b
聞き手によって解釈が変わる言葉より、
○○を使って、XXXまで、できます。

とかを言う形で、言った方が良いよ。
0835遊園地-24
垢版 |
2018/03/11(日) 17:20:02.18ID:jUiHYj3b
ハーケンクロイツ型だ。
0837デフォルトの名無しさん
垢版 |
2018/03/11(日) 20:19:31.03ID:lvju0XX+
>>836
気色悪いこと聞くなやストーカーかw
0839デフォルトの名無しさん
垢版 |
2018/03/11(日) 20:30:22.89ID:/h11nyBc
業務で作る場合はコピペしまくりでつくることができないからな
分からんからと5chで質問して貼られたコードをコピペ使用するとライセンス違反になるだろうし
0840遊園地-24
垢版 |
2018/03/11(日) 20:47:05.14ID:jUiHYj3b
匿名掲示板に上げるコードでライセンス云々には、ならんだろ。
gitとか、なら、問題になるけどな。

質問サイト[テラテイル、5ch、やふー、goo]等はグレーゾーンだろ。
0841デフォルトの名無しさん
垢版 |
2018/03/11(日) 20:51:03.15ID:/h11nyBc
>>840
5chに貼られたコードでライセンス云々には、ならんだろ
と言う証拠あるのか?
5chに移譲になるんじゃないのか?
0842遊園地-24
垢版 |
2018/03/11(日) 21:13:41.50ID:jUiHYj3b
なるかも、知れないが。
コード自体に著作権が認められる範囲のモノで有る必要が有るぞ。

この基準を超える判定が裁判所での判断材料になる。
0844デフォルトの名無しさん
垢版 |
2018/03/11(日) 21:34:45.91ID:/h11nyBc
>>842
Pythonスレは初心者だらけでそんなレベルの物はないだろうが
それなりに出来る人がいる所だと分割して延々コードを貼ってくれる人が
いるからな。
業務でやるならグレーゾーンの物も使わないに限るだろう
ライセンス明記の物をライセンス違反にならないように使うと
0846遊園地-24
垢版 |
2018/03/11(日) 22:04:44.92ID:jUiHYj3b
業務内容よりき、だな。
web屋でコピペしたモノを販売したらアウトだし。

企業利用が不可なのを外して。

事務作業で社内文章[書類]整理なら、
販売や公開、取引先の企業に渡さなければ
コピペでも任意で許可貰えば良いし。
0847遊園地-24
垢版 |
2018/03/11(日) 22:10:17.27ID:jUiHYj3b
法的関係は個人の判断に任せて。

pythonの話をどうぞw

(業務で使う事になった。
とか、匿名掲示板で言わなければ良いだけ話なんだけどなww)
0848デフォルトの名無しさん
垢版 |
2018/03/11(日) 22:35:13.45ID:iE5voU0A
>>845
checkioとかで練習もいいかもね。
他の人のコードも見られるし、コードを公開したらPEP8のルールに則ってコーディングしたほうがいいよとか、コメントつけてくれる人もいるし。
0852デフォルトの名無しさん
垢版 |
2018/03/12(月) 00:04:13.92ID:TPXD1rYj
>>850
そのとおりだ。
すまん、表というのは、おこがましいな。ただ計算結果を出力しただけだ。
でも、実質これが初めてのプログラミングだった。ループの勉強になった。
0853デフォルトの名無しさん
垢版 |
2018/03/12(月) 00:06:26.65ID:nR8lTRuQ
>>850
画面で見るときはGUIで横・縦スクロール・拡大・縮小可能にして
で、印刷の時はA4で印刷OKのpdf/レイアウト変換しているんじゃないのか
九九の表作るよりもこっちのほうが業務に役立つだろ
0855遊園地-24
垢版 |
2018/03/12(月) 00:25:57.07ID:heL8Y3+1
わざわざ、GUIにしなくても、
適当なテキストふぁいるに出力したら良いんじゃない。

pythonでGUIとなるとwebだと思ってしまう。
C#使えるなら、そっちでやれば良いよ。
0856デフォルトの名無しさん
垢版 |
2018/03/12(月) 00:31:25.72ID:H5KyxrFO
>>828
俺は土曜日から勉強し始めた

昨日は赤黒木でKVS作ってみた
今日はtkでオブジェクトストレージのファイラー作った
次はDjangoでファイラー作ろうと考えてる
0857遊園地-24
垢版 |
2018/03/12(月) 01:15:20.25ID:heL8Y3+1
2日で?
OS標準の機能の呼び出しなら、把握可能だな。


import tkinter.filedialog as tkfd
filename = tkfd.askopenfilename()
print(filename)
0858デフォルトの名無しさん
垢版 |
2018/03/12(月) 01:36:04.31ID:nR8lTRuQ
>>856
2日足らずでそんなレベルになるのはすごいな
赤黒木のようなデータ構造を知っていると言うことはプログラミングの素人ではないよな。
そんな奴なら俺様dictionaryも作れるよな
0859遊園地-24
垢版 |
2018/03/12(月) 02:30:57.35ID:heL8Y3+1
ネタ発言はココまでにしても。
言葉が抽象的で、
去年の土曜日なのか、10年前の土曜日からなのか不明だしな。
0860デフォルトの名無しさん
垢版 |
2018/03/12(月) 02:41:05.48ID:IdW8RVi3
2桁x2桁の練習ができる100マス計算を作ってください
tkinterで
最後にOKボタンを押すまでの時間を競えるやつがいいです
あと全マス正解になるまでOKボタンは灰色で押せないのがいいですね
0862デフォルトの名無しさん
垢版 |
2018/03/12(月) 06:50:22.25ID:Fyz0ujGi
>>857
tkで"オブジェクトストレージ"のファイラーなら俺でも簡単に出来ると言いたいのかな。
KVS、オブジェクトストレージが出る人は、趣味でプログラムではなく本業でプログラム作成だろう。
>>861
プログラマでもベテランの本職プログラマからつい最近趣味でプログラム始めたような人までいるからね
0863デフォルトの名無しさん
垢版 |
2018/03/12(月) 08:01:41.56ID:PccffczO
くだすれ(超初心者用)
0864デフォルトの名無しさん
垢版 |
2018/03/12(月) 08:04:46.36ID:rE/nU/YS
ベテランの本職超初心者プログラマーばかりやでここ
0865デフォルトの名無しさん
垢版 |
2018/03/12(月) 08:13:41.82ID:xSEohlcA
python"は"超初心者です
0867遊園地-24
垢版 |
2018/03/12(月) 10:38:38.44ID:heL8Y3+1
>>861
失礼しました。

遊園地-24が間違えてました。

曖昧な表現の言葉が適切でした。
0868遊園地-24
垢版 |
2018/03/12(月) 10:54:33.25ID:heL8Y3+1
>>862
察しろよw

wgetぐらい、しか使えないんだぞww
0869デフォルトの名無しさん
垢版 |
2018/03/12(月) 17:12:08.36ID:sepj1Iub
python初心者やけど、bitflyerのapiからビットコインの価格取れた。
意外と簡単でした。あと価格をリストに入れたり移動平均作ったりも出来たよ。
0870デフォルトの名無しさん
垢版 |
2018/03/12(月) 17:16:53.12ID:7wlpNuQs
>>869
コードうpよろ
0871デフォルトの名無しさん
垢版 |
2018/03/12(月) 17:24:15.29ID:1VQYTaM5
アベマTVの番組表をあれこれするスクリプト書きたいけど
アベマはAPI公開してないんだよな。
一部だけでも公開してくれてもいいのに
0873デフォルトの名無しさん
垢版 |
2018/03/12(月) 21:48:23.14ID:hHRJsek/
>一部だけでも公開してくれてもいいのに
の数分後に>>872では恥ずかしい感じだな
ここの超初心者の調べるは普通の奴からすれば調べていないレベルだろうし
0875デフォルトの名無しさん
垢版 |
2018/03/12(月) 22:01:37.72ID:UrR/7QaP
なかなか参考書進まないなぁ…
みんな1週間くらいで1冊終わらせちゃうんだろうか
とりあえず日付変わるまで頑張って今日は寝よ
0876デフォルトの名無しさん
垢版 |
2018/03/12(月) 22:05:53.99ID:hHRJsek/
>>874
少し調べればわかることでも、めんどくさいとかで自分では調べたくないからと
他人にやらせるようにする奴も多いからな。
5chにはそんな奴多いだろうからね
0877デフォルトの名無しさん
垢版 |
2018/03/12(月) 22:13:29.39ID:KbeqxTAu
これ、五目並べの勝者判定プログラムなんだが
何やってるかさっぱりわからん
だれか解説してくれないか?

def has_a_winner(self):
width = self.width
height = self.height
states = self.states
n = self.n_in_row

moved = list(set(range(width * height)) - set(self.availables))
if(len(moved) < self.n_in_row + 2):
return False, -1

for m in moved:
h = m // width
w = m % width
player = states[m]

if (w in range(width - n + 1) and
len(set(states.get(i, -1) for i in range(m, m + n))) == 1):
return True, player
if (h in range(height - n + 1) and
len(set(states.get(i, -1) for i in range(m, m + n * width, width))) == 1):
return True, player
if (w in range(width - n + 1) and h in range(height - n + 1) and
len(set(states.get(i, -1) for i in range(m, m + n * (width + 1), width + 1))) == 1):
return True, player
if (w in range(n - 1, width) and h in range(height - n + 1) and
len(set(states.get(i, -1) for i in range(m, m + n * (width - 1), width - 1))) == 1):
return True, player
return False, -1
0878デフォルトの名無しさん
垢版 |
2018/03/12(月) 22:26:08.47ID:Pas1pqxu
>>877
五目並べの勝者判定プログラムという前提から論理的に推察するに
五目並んでいるか判定しているものと思われる可能性が低くはないという意見が多勢を占めるのでななかろうか
0879デフォルトの名無しさん
垢版 |
2018/03/12(月) 22:44:01.47ID:LABg7y/K
まあ>>872は単純に"abematv api"でググると出てくる上4つだし、
お礼の一言もない871を擁護する気は全く無いが


しかし872の一番目は、番組表というより単なる通知だし
それ以下のやつもハックしただけで公式が公開してるわけじゃないよね

10年前ならそういうのがカッコよかったかもしれないけど
最近の風潮としてはそれあまり褒められたものじゃないし

「公式が公開してくれればなあ」と言う嘆きはそういう意味かもしれん

と思いました
0881880
垢版 |
2018/03/13(火) 02:26:00.51ID:TEZurkl3
セル(x, y)に、石を置いたとき、
そのセルを含めて、縦横斜めに、五目並んだかどうかをチェックする

縦 : (x, y-4)〜(x, y+4)
横 : (x-4, y)〜(x+4, y)
斜め : (x-4, y-4)〜(x+4, y+4)

例えば、横なら、この範囲
xxxxoxxxx
0882デフォルトの名無しさん
垢版 |
2018/03/13(火) 06:00:40.97ID:l9F1PUdp
>>877
このコードの不思議なところは、五目並べ判定なのに
5という数字がどこにも出て来ないところ
引数のselfの構造も不明だし、本当はもっと長いんじゃないか?
そんなの他人に丸投げすんなよ
書いた本人に聞け
0883デフォルトの名無しさん
垢版 |
2018/03/13(火) 08:05:50.73ID:ZknM1vTl
>>882
if「・・・」
0884デフォルトの名無しさん
垢版 |
2018/03/13(火) 08:13:54.18ID:lnvk2j3Q
>>882
>>877は五目並べの
https://github.com/junxiaosong/AlphaZero_Gomoku の game.pyの class Board
のコピペ。きくにも、英語・広東語でとなる。
全体も参照できるようにリンク張るとかすれば良いのに、そうしないのが超低脳が普通のこのスレ住人らしいところ。
あと、超低脳が出来るのは丸投げぐらい。
一部のコード貼っただけでは、
self.states、self.n_in_row、self.availablesは何それとかになるよな
0885遊園地-24
垢版 |
2018/03/13(火) 11:33:07.62ID:x2hS9PfM
a=空白
b=B先手
C=C後手

[
'acaaaaa',
'acaabaa',
'acaaaaa',
'aaababb',
'bbbaaca'
]
0886デフォルトの名無しさん
垢版 |
2018/03/13(火) 14:16:00.09ID:WTxORbeC
>>879
俺も中身を見て唖然としたよ
APIの意味や目的さえも理解せずにリンク貼ったバカがいることに
0887デフォルトの名無しさん
垢版 |
2018/03/13(火) 14:55:35.71ID:lJjfEA/f
>>871 >>872に何か教える気には全くならないんだが
お題には興味があったので個人的にちょっとやり方考えてみた

と言うのも以前個人的に、地上波、BSの番組表を自動で取得するスクリプトとか書いたりしてたもんで


一応無難な礼儀としては、番組表の表示までは手動で行なって、
取得したhtmlを解析する形になるかね

abemaの場合は全24ch、3時間 or 1ch、24時間がこの手法で取得できるmaxぽい
htmlをのぞいて見ると、あとは"bA_o"(開始時間の分表示)、
"q3_b"(タイトル)あたりから放送予定リストが作れそうやね
0889デフォルトの名無しさん
垢版 |
2018/03/13(火) 18:07:38.81ID:dqdO2T6N
>>874
なるほど
うすうすそんな術がある気がしてたけど
ちゃんと固有名詞ついてるんだね
0890デフォルトの名無しさん
垢版 |
2018/03/13(火) 18:19:05.67ID:lJjfEA/f
>>889
回答する方も漠然と質問だけ放り投げられるよりは
誤答例がある方が話のポイントをつかみやすいし、

むしろそんな素人臭いワードじゃなくて
ちゃんと心理学的な用語があるんじゃないすかね
0891デフォルトの名無しさん
垢版 |
2018/03/13(火) 18:58:55.61ID:CMoZjM34
>>889
たとえばこのスレの例で言うと

>>871が質問者
>>872が間違った答えを投稿した人
>>887がひけらかす衝動を抑えられなかった人
0892デフォルトの名無しさん
垢版 |
2018/03/13(火) 19:06:57.48ID:lJjfEA/f
>>891
えー何でいきなりそんな敵意むき出しなの…
0893デフォルトの名無しさん
垢版 |
2018/03/13(火) 19:23:47.55ID:CMoZjM34
>>892
面白がっとるだけや気にすんなw

当の本人ですら気がつかずに、あまつさえその法則について言及しちゃうってゆうw
この手のなかでは非情に信憑性の高い法則やねw
0894デフォルトの名無しさん
垢版 |
2018/03/13(火) 19:29:02.06ID:lJjfEA/f
>>893
いや明らかに挑発してるじゃん…
0895デフォルトの名無しさん
垢版 |
2018/03/13(火) 19:34:25.66ID:CMoZjM34
>>894
なんやねんウジウジすんなや気色悪いねんw
0897デフォルトの名無しさん
垢版 |
2018/03/13(火) 19:39:20.77ID:5jY2r+xJ
>>893
さすがに「面白がっとる」とまで言った上で「なんで怒ってるの?」って態度はやべえよ
ADHDの判定の一つがこういう相手を怒らせる言動に無頓着なこと
かなり露骨な状態だしチェックして見ては?
0898デフォルトの名無しさん
垢版 |
2018/03/13(火) 19:42:45.93ID:CMoZjM34
>>897
えー何でいきなりそんな敵意むき出しなの…w
0899デフォルトの名無しさん
垢版 |
2018/03/13(火) 19:44:52.78ID:lJjfEA/f
>>897
単に何かに苛立って絡んで来てるだけにも見えますけどね

よく読めば単にタイトル判定用のキーワードを検索しただけで
大したこと書いてないんですが…
0900デフォルトの名無しさん
垢版 |
2018/03/13(火) 19:46:36.71ID:ywuTIatm
設定を読み込む関数の中でconfigparserでiniから読み込んだパラメータを変数に入れておいて
その変数を他の関数のスコープで使いたい時ってデコレータでクロージャにすればいいのかな?
0901デフォルトの名無しさん
垢版 |
2018/03/13(火) 19:46:54.50ID:5jY2r+xJ
>>898
まあまあ
あんた自身のためや
0902デフォルトの名無しさん
垢版 |
2018/03/13(火) 19:50:25.44ID:CMoZjM34
>>901
なんやもう引いてまうんかw
0904デフォルトの名無しさん
垢版 |
2018/03/13(火) 20:49:05.27ID:bHnt20Xj
>>896
おすすめかどうか知らないけど、pygame制らしき、初代スーパーマリオのゲームプレイ動画がYOUTUBEにあった
たしかコードも説明欄に載ってたはず
誰でも知ってるゲームだし、お手本にしながらやってみるとか?
0905デフォルトの名無しさん
垢版 |
2018/03/13(火) 21:00:38.51ID:kltuLcz/
俺らはpythonやプログラミングの知識ろくにないから、
非pythonの雑談の話が盛り上がるよな
0906デフォルトの名無しさん
垢版 |
2018/03/13(火) 22:54:51.50ID:bHnt20Xj
決まったフォーマットの.xlsxから、任意の条件を満たす値が入った行を抜き出して、別のシートにコピーするGUIアプリを作るとしたら、どれくらいの時間で作れる?

画像みたいに、例えば
ケース2:5以上
ケース3:0.5以下
を同時に満たす行(この場合、4行目)を抜き出して、別のシートにコピーするプログラムなんだけども…

何か作るのに24時間近くもかかってしまって、楽するためのアプリを作ろう、という当初の目的が潰れちゃった気がしてさ
これなら、毎回Excelで数式書くほうが楽な気がする…
https://i.imgur.com/WzE6Z6e.jpg
0909デフォルトの名無しさん
垢版 |
2018/03/14(水) 00:37:35.87ID:KbHgEZpQ
.xlsxファイルの操作なのに、なんで.cvsで、さらにrubyではになるんだ?
ついでにきいているのはプログラム作成時間だろ

>>906
>どれくらいの時間で作れる?
俺は出来る実力ないからできませんだが
どうしたら出来るかの質問ではなく、どれくらいの時間で出来る?
ってのがクダスレらしい質問だな
0910デフォルトの名無しさん
垢版 |
2018/03/14(水) 01:00:49.90ID:Hu82yye6
>>906
1. Python環境の準備、Hello World
2. if, for, while, print など基本を試す
3. 固定パスの.xlsxを読み込み、3.と同じことを試す
4. 固定パスの.xlsxに書き込み
5. 引数とクラス構成の整理

プログラミング経験者なら、ここまで12時間ぐらいか?
プログラミング初心者なら、24時間?
GUIのフレームワークをtkinter, kivy, djangoのどれを使うか次第だけど
一番簡単なtkinterなら+12時間ぐらいか?
まあGUIはこだわり始めたら際限ないからわかんね
0911デフォルトの名無しさん
垢版 |
2018/03/14(水) 01:04:49.93ID:f49XfliC
無駄ってことか…
もったいない時間だった
やりたいファイルは30列の最低1万行だから、プログラミングの方が楽できるかと思ってたわ
Excelの方が早そうね
まぁ練習になったと思えばいいか…

>>909
初心者の開発にかかる時間って調べる時間も結構あってあてにならないし、教えられるくらい出来る人はどれくらいの時間かかるか聞いて、自分と比較して頑張ったところで楽できるか出来ないか判断出来るからね

あと、.xlsx開いて、条件の値を探して当てはまる列をコピーしてシートに貼る、って正直めちゃくちゃ簡単なことだと思うからその程度に1日もかかるなんて雑魚過ぎないか?と思って知りたかったんだ
0912デフォルトの名無しさん
垢版 |
2018/03/14(水) 01:22:57.02ID:KbHgEZpQ
>>911
時間はその人の実力次第だろう。
pythonで日ごろプログラム作っている職業プログラマが
>>906に12時間もかかったら使えない奴となるような気がするし、
一方、俺のようにpythonの文法すらあんまりわかっていない超初心者は
>>906は完成しないものになるし。
0913デフォルトの名無しさん
垢版 |
2018/03/14(水) 01:26:30.03ID:iDN3YvFD
>>911
pythonに慣れてないなら、エクセルのことはVBAで
やったほうが楽だと思うよ 言語の特徴ってよりVBAの
教える側の環境が整ってると思う 
0914遊園地-24
垢版 |
2018/03/14(水) 02:00:59.90ID:QxYI2hIu
どうしても。って
言うならコピペ使うわ。

https://ideone.com/tloI02



[['ケース1', 'ケース2', 'ケース3', 'ケース4', 'ケース5'], [14.0, 1.0, 1.1, 100.0, 21.0], [19.0, 2.0, 0.4, 214.0, 30.0], [11.0, 5.0, 0.1, 41.0, 29.0], [3.0, 6.0, 0.9, 191.0, 19.0]]

[('ケース1', 14.0, 19.0, 11.0, 3.0), ('ケース2', 1.0, 2.0, 5.0, 6.0), ('ケース3', 1.1, 0.4, 0.1, 0.9), ('ケース4', 100.0, 214.0, 41.0, 191.0), ('ケース5', 21.0, 30.0, 29.0, 19.0)]
0916デフォルトの名無しさん
垢版 |
2018/03/14(水) 02:10:19.44ID:jEBndoVI
>911
GUI求めるならエクセルワークシート上で作業するのが良さそう。
1列条件判定用の列を加えて、データのあるところを全部選択して、「テーブルを挿入」
追加した列に判定式(=AND(A2>1.5, C2 < 2) とか)を書き込み、ctrl + dで下方向にコピー(テーブルに変換していれば、ctrl+dしなくても、勝手に下までコピーしてくれると思う)
判定式の列の見出し行部分をクリックして、TRUE のみを選択するようにフィルター設定
該当行のみが表示されるから、左上のセルクリックしてCtrl+shift+右矢印、ctrl+shift+下矢印で対象範囲を選択、
Ctrl+cでコピーして、別のワークシートに移動してCtrl+vでペースト
0917デフォルトの名無しさん
垢版 |
2018/03/14(水) 02:18:41.76ID:jEBndoVI
>911
判定用の行を追加する必要もなかったわ
エクセル フィルター 以上
で検索すると、数値の範囲で絞り込む方法の解説記事が山ほど出てくる。
Pythonスレなので、このあたりで。
0919遊園地-24
垢版 |
2018/03/14(水) 02:31:25.24ID:QxYI2hIu
>>916
>>917
1万件程度の該当数値が、飛び飛びデータでも、その方法は使えるん?

それなら、すごく便利だ。
0920遊園地-24
垢版 |
2018/03/14(水) 02:34:43.81ID:QxYI2hIu
調べたけど。使えるっぽいな。
ムリにpython使う必要はなかったww
0921デフォルトの名無しさん
垢版 |
2018/03/14(水) 08:09:33.66ID:f49XfliC
っはあああああwwww
マジですかwwww
フィルターって複数項目も出来たのかwww
5分でできるわこんなんwwww
車輪どころか、四角い車輪の再開発だわwwwww
何も有用性がないwwwww

Excelファイルを弄るだけならExcelに任せるべきやね…
tkinterの使い方がわかったし、良いんだこれで…
まぁでも作ったやつでやれば、数値を入れるだけだし1分で出来るけどね(必死
0922デフォルトの名無しさん
垢版 |
2018/03/14(水) 09:43:14.96ID:+xowecU/
ctypesでC++で実装したdllに配列を渡してその任意インデックスの値を取り出すのはどうすればいいでしょうか?
0925デフォルトの名無しさん
垢版 |
2018/03/14(水) 11:36:08.51ID:BK5SIpnj
for n in range(3):
arr=np.random.randint(0,10(3,3))
みたいな複数の二次元配列を受け取って縦に結合したい
ただ結合後のshapeは(3,3,3)じゃなくて(3,9)にしたいんだけど、なにかいい方法ありませんか?
0926デフォルトの名無しさん
垢版 |
2018/03/14(水) 12:20:47.62ID:O9ZHaK3E
プログラミング経験は無いのですがpythonの勉強を始めようと思ってanacondaを入れました
jupyter notebookが手持ちの参考書で紹介されていたので使っています
参考書もまだ基本文法の勉強中ですがwebで公開されてるサンプルアプリも試してみたいなと思ったのですがjupyter notebookではtkinterなどのGUIのコンポーネントは使えないのでしょうか?
初歩的な質問で申し訳ありません
0929デフォルトの名無しさん
垢版 |
2018/03/14(水) 14:10:48.47ID:dUX2MRLD
>>926
使えるよ
もちろんウインドウに表示されるべきものがJupyter上に表示されるわけではなく、
ウインドウは別に表示される
実行するのがコマンドラインかJupyter上かの違い
つか壊れたりしないからやってみなよ
すぐでしょ
0930デフォルトの名無しさん
垢版 |
2018/03/14(水) 14:18:21.50ID:4bvhkHVa
こいつ頭悪そう
0931デフォルトの名無しさん
垢版 |
2018/03/14(水) 14:18:56.33ID:4bvhkHVa
アンカ抜けた
>>928のこと
0932デフォルトの名無しさん
垢版 |
2018/03/14(水) 14:27:31.07ID:BK5SIpnj
>>925
flg=False
for n in range(3):
__arr=np.random.randint(1,9(3,3))
__if flg==False:
____store=arr
____flg=True
__else:
____store=np.vstack((store,arr))

これ以外でなにかあれば…(フラグ使うのはモテないと聞いたので)
あと欲しいのはshape(3,9)じゃなくて(9,3)でした すいません
0933デフォルトの名無しさん
垢版 |
2018/03/14(水) 15:05:18.95ID:f49XfliC
まぁ、全体の目的としては何でもPython でやって使い方を覚えようとしてただけだから良いんだけどね
それがたまたま失敗しただけで
tkinter とopenpyxl は覚えたから、簡単なGUIの作成とopenpyxl を使ったものはすぐに作れると思う
解析アプリも作ってたから配列の扱いも多少慣れた
結果はともかく、作るのは楽しいぞ
0934デフォルトの名無しさん
垢版 |
2018/03/14(水) 15:32:15.39ID:2cAisCwC
>>896
おすすめかどうか知らないけど、pygameのサイトにインベーダーがあった気がする。あれでほぼ充分理解可能。
0935デフォルトの名無しさん
垢版 |
2018/03/14(水) 15:33:43.23ID:2cAisCwC
>>906
エクセルのマクロとか使ってなくて
シートの該当データコピーするだけなら
pandasおすすめ
0936デフォルトの名無しさん
垢版 |
2018/03/14(水) 15:38:00.32ID:2cAisCwC
>>922
日本語が不自由な人のように思われるので
もう少し詳しく
0937遊園地-24
垢版 |
2018/03/14(水) 15:41:11.97ID:QxYI2hIu
[タッチパネル式の]商品注文つくって味噌

注文が画面に表示される3,4つ 大ボタン
右下の次へ を 押すと 注文の詳細が左詰めで表示

商品名 値段

       合計

戻る     次へ

最後に確定ボタンを中央に大ボタンで表示
左下に戻るボタンを表示


注文が確定したら、エクセルに自動で追記記入
日付 商品名 値段 個数

商品が重複した場合は、まとめる。
0938遊園地-24
垢版 |
2018/03/14(水) 15:42:32.72ID:QxYI2hIu
タッチパネルはイメージしやすい様につけた だけだぞー。
0939遊園地-24
垢版 |
2018/03/14(水) 15:43:59.32ID:QxYI2hIu
適当だけど、1ボタンクリックで商品+1
ボタン内に

 商品名*2

とか、表示させてみー。
0940デフォルトの名無しさん
垢版 |
2018/03/14(水) 17:00:21.06ID:197vfRfL
すいません、python3.6です
リストの中の値を順番に加工していくのですが
他のリストに書いてある番号の時だけ別の処理をしたいのですが
どうしたらいいのでしょうか?
例えば
hiragana=["あ" , "い" , "う" , "え" , "お" , "か",.........]というリストがあって
文字をカタカナにしたいが
banngou=[0,4,5]というリストに書いてある番号の時だけ
ローマ字にするという感じです。
[a,イ,ウ,エ,o,ka]
0942デフォルトの名無しさん
垢版 |
2018/03/14(水) 17:26:40.89ID:kpA1vR2Z
やり直し

d1 = {"あ": "a", "い": "i", ....}
d2 = {"あ": "ア", "い": "イ", ....}
[d1[x] if i in banngou else d2[x] for i, x in enumerate(hiragana)]
0943940
垢版 |
2018/03/14(水) 17:43:20.80ID:197vfRfL
>>942
すいません、例えが悪かったです。
カタカナやローマ字でほんとに変換するわけでないので
ほんと作ってもらったのにすいませんorz
その番号の時だけ数値を使って別の命令を行いたいのです
カタカナやローマ字用のリストは用意できない感じの内容です。
0944デフォルトの名無しさん
垢版 |
2018/03/14(水) 17:53:47.13ID:kpA1vR2Z
>>943

実はそんな気はしてたけど

for i, x in enumerate(hiragana):
 if i in banngou:
   なんか処理
 else:
   なんか処理
0945遊園地-24
垢版 |
2018/03/14(水) 17:58:04.59ID:QxYI2hIu
もはや、恒例のダメな奴なww

https://ideone.com/GD0AH6


自分でww 少し変えて使える様にしろよな

  次回は 「サーニャをそんな目で見んな〜〜〜ッ! 」

でwww お送りしますwwww
0946遊園地-24
垢版 |
2018/03/14(水) 17:59:26.00ID:QxYI2hIu
ってwww

 答えかくなよwww
0947デフォルトの名無しさん
垢版 |
2018/03/14(水) 17:59:37.83ID:197vfRfL
>>944
ありがとうございます
例えがリストで解決できるなんてきづかなk

普通のforじゃ回せないどうしようとか思ってました
ホント助かります
0948遊園地-24
垢版 |
2018/03/14(水) 18:01:39.12ID:QxYI2hIu
import romkan

hiragana=["あ" , "い" , "う" , "え" , "お" , "か"]
banngou=[0,4,5]

for i,j in enumerate(hiragana):
□if i in banngou:
□□print(romkan.to_roma(j))


終了しましたぁあぁぁぁぁああwwwww あああああwwww
0949デフォルトの名無しさん
垢版 |
2018/03/14(水) 18:25:38.46ID:2cAisCwC
思った通りの展開だった
放置して正解だった
0950デフォルトの名無しさん
垢版 |
2018/03/14(水) 20:05:45.13ID:zKpwVLmK
djangoどう?
簡単なん?
0952デフォルトの名無しさん
垢版 |
2018/03/14(水) 23:50:39.33ID:WkrPXw0h
Anacondaでkivy使われてる方いらっしゃいますか?
ウェブで記事を見つけたのでその通りやれてるはずなのですが

pip install Kivy-1.9.2.dev0-cp36-cp36m-win_amd64.whl

コマンドを入力するとFilenotFoundErrorとなります
ダウンロードしたファイル自体はコマンド実行してる階層に移動させたのですが上手くいきません
プログラミング以前の質問で申し訳ありません…

以下参考にした記事です
https://www.google.co.jp/amp/s/gamp.ameblo.jp/maplerain78/entry-12265793422.html
0953デフォルトの名無しさん
垢版 |
2018/03/14(水) 23:58:00.88ID:WkrPXw0h
>>952 です
エラーを確認すると
C:\\Users\\Anaconda3\\
のように\\が2つになっていました
ディレクトリの指定がおかしくなってるのでしょうか?
0954デフォルトの名無しさん
垢版 |
2018/03/15(木) 00:19:27.21ID:B0g+2l1J
それはエスケープだね
とにかくエラーの内容をそのまま全部貼ってください
0955デフォルトの名無しさん
垢版 |
2018/03/15(木) 01:07:06.52ID:NnpmsWbw
ダウンロードしたファイル名が、そのサイトの記事と異なっているのだろう

そのサイトの記事は、17年4月だろ
0956デフォルトの名無しさん
垢版 |
2018/03/15(木) 01:31:45.64ID:VLB1Vsi0
>>955
5chのpyスレ連中にはそんなレベルの間違いが普通な気がするからな
今のバージョンは1.10.0みたいだな
0957デフォルトの名無しさん
垢版 |
2018/03/15(木) 09:13:32.72ID:YE1LMvWx
ちょっと前のexcelの話といい、住人のレベルがよく分からん

PC分からないのにいきなりこんなスレに来るのはどういうシチュエーションなんだ
授業の課題みたいなネタも散見されるから、
単にやっぱり若い人はスマホ生活だからPCの操作に慣れてないってことなのかしら

excelの人は年配の方みたいだったから
PC疎遠世代が上下に出現してるのを目の当たりにすると
PCが友達だった俺らの世代はやっぱり特殊な時代を生きたんだなと実感する
0958デフォルトの名無しさん
垢版 |
2018/03/15(木) 09:20:07.87ID:BetyBG83
今のPythonの状況をよくあらわしてると思うよ
目的がまずあって手段としてPythonが用いられる
人工知能の為、CADや映像制作ツールの為、生産性向上の記事で紹介されていたから
そして、世の中の動きに連動して授業でもPythonを教えるようになったから

パソコン創世記で誰でもほんのちょっと勇気を出していれば金持ちになれたような
(そしてお金よりも別の何かを大事にする人が多かった)へんてこな時代は終わった
それぞれ目的があってプログラミングをしてるんだ
プログラミングをしたり、夢を見るのが目的なんじゃない
0959デフォルトの名無しさん
垢版 |
2018/03/15(木) 10:52:48.48ID:pFRDZsIX
そうそう
目的ありきで、実現の為の手段の一つがPython
Pythonありきで何かを実現したいというのは、
悪いわけじゃないけどヘンテコに映るよね
革靴買ったんだけどこの靴で登山しやすい山あるかな、みたいな
登山するなら革靴じゃなくトレッキングシューズ選択しろよと
0961デフォルトの名無しさん
垢版 |
2018/03/15(木) 11:31:29.48ID:tS8Mituf
手段が目的化してる人の多いRubyなんかとは対照的だよね
Pythonってコミュニティも全体的にドライな印象
0962デフォルトの名無しさん
垢版 |
2018/03/15(木) 11:45:08.66ID:SjEDJeMK
手段が目的化する事は悪い事ではないのだからpythonを使う事が目的でも何の問題もない
rubyがダメなのは使ってる奴がバカばかりだからだよ
0965デフォルトの名無しさん
垢版 |
2018/03/15(木) 21:15:29.04ID:wRs/ERwA
いま馬鹿を激しく引き寄せているのはpythonだろ
ここ超初心者用は実質引き寄せられた馬鹿様用な感じだし
0966デフォルトの名無しさん
垢版 |
2018/03/15(木) 22:29:05.09ID:jDGqTJxi
くだんねー質問なんだけど誰か教えてくれ。

俺は研究で解析パイプラインで自分で書いたpythonスクリプトを使ってる。

で、最近Pythonが流行っていると思うんだけど、職業プログラマというか、
受託でコードを書いて売っているような業者さんは、
顧客のコンピュータにどうやって実行環境を構築しているの?

自分の周りにはPythonのVMインストールしてスクリプトの実行もできないような、
オッサンとか普通におるんだけど。
0968デフォルトの名無しさん
垢版 |
2018/03/15(木) 23:05:11.84ID:tIXtXy4E
>>966
業務アプリはそもそもコードを配ったりしないのが一般的だよ
AWSとかに乗せてWebサービスとして提供するの
0969デフォルトの名無しさん
垢版 |
2018/03/15(木) 23:40:20.21ID:jDGqTJxi
>>967
>>968
サンクス!
967を見て、意外と顧客有能だなと思ったけど、968を見て得心いった。
両方ともあるのだろうけど968の方がウケそう。
0973デフォルトの名無しさん
垢版 |
2018/03/16(金) 07:31:05.74ID:94o+zqi4
まともなセキュリティポリシーのある組織なら
業務用PCへのOSSソフトインスコ禁止が普通だからなあ
最初からPythonが入っていない時点でWindowsは詰んでる
0974デフォルトの名無しさん
垢版 |
2018/03/16(金) 07:45:50.03ID:GJqB8owa
>>973
ソフトを開発を商売にしている会社の開発部隊は普通にOSSインスコしているんじゃないのか?
俺のところはセキュリティの関係でホイホイ勝手にOSSだけでなくフリーソフトも入れられないし
仮に、Pythonをインストできたとしても、勤務中にソフト作りはほぼ無理だし
(昼休み・始業時間前にやるとかぐらいかな)
0975デフォルトの名無しさん
垢版 |
2018/03/16(金) 07:50:58.15ID:dTIHyxrE
pythonって、そんなに脆弱なの?
俺、会社のPCにpython入れて
しこしこコード書いてるんだが。
0976975
垢版 |
2018/03/16(金) 07:52:01.07ID:dTIHyxrE
会社のシステム部門には黙ってです。
0979デフォルトの名無しさん
垢版 |
2018/03/16(金) 13:24:23.67ID:EQCI1djh
Python云々じゃなくて、会社のPCを業務以外の目的で使えないんだよ
自由に使える会社が異常なだけ
0982デフォルトの名無しさん
垢版 |
2018/03/16(金) 14:20:59.93ID:4g6e2V4a
業務利用目的として情シスがホワイトリストで認めたソフトウェアという意味だろ
IT業界にいると感覚がズレがちだけど、一般企業のITリテラシーって驚くほど低いぞ
0983デフォルトの名無しさん
垢版 |
2018/03/16(金) 14:26:43.80ID:+9m4T2+W
>>982
道端で拾ったUSBメモリを会社のパソコンに挿してウイルス感染させた
とか情シス憤死案件たまに聞く
0984デフォルトの名無しさん
垢版 |
2018/03/16(金) 14:28:10.14ID:3ma6aQHv
公務員は書き換え禁止
0985975
垢版 |
2018/03/16(金) 17:24:32.28ID:dTIHyxrE
>>977
確かに私の頭はポンコツです^^
0986デフォルトの名無しさん
垢版 |
2018/03/16(金) 20:51:15.49ID:nemrSVup
>>973
勝手にインストールするのは当然禁止だが、しかるべき手続き踏めばPython程度はインストールできるだろ
それすらできないならその会社の情シスかまともな判断できてないだけかと
0987デフォルトの名無しさん
垢版 |
2018/03/16(金) 21:18:44.53ID:94o+zqi4
>>986
セキュリティに敏感な上司は簡単に申請を通さない
「何でお前だけそんなもんが必要なんだ」と一蹴されておしまい
0988デフォルトの名無しさん
垢版 |
2018/03/16(金) 21:32:19.05ID:blbpk9xO
実際、手元でやる一般的な事務作業の自動化なんかExcel VBAでやった方が早いし、
後で引き継ぎもできるからな
くだらんワガママは却下されて然るべき
0989デフォルトの名無しさん
垢版 |
2018/03/16(金) 21:41:50.98ID:mIgYk3rI
会社のPCで部署,そして情シスの許可までとってPythonでお前らはどんなことをしているんだ? 
>>906のようなExcelでやったほうが良いようなものを勤務時間中に24時間もかけて
しこしこpythonで作れるゆとり職場なのかな
0991デフォルトの名無しさん
垢版 |
2018/03/16(金) 22:00:54.00ID:a5O7XXB3
>>989
どうでも良いけど、なんで906はGUIにこだわったんだろうね。
コマンドライン/ターミナルでExcelより簡単・高速に処理するツールなら、
pandasかRで簡単だとおもうけど、GUIだったらExcelがそのものな気がするけど。
0992デフォルトの名無しさん
垢版 |
2018/03/16(金) 22:19:25.01ID:ihHBlcj6
うむ、確かにどうでもよい
0993デフォルトの名無しさん
垢版 |
2018/03/16(金) 22:20:49.88ID:0cF7KNh8
機械学習させてんじゃないの?
便利そう。
0995デフォルトの名無しさん
垢版 |
2018/03/16(金) 22:57:26.87ID:ihHBlcj6
法人に感情移入するとはなかなかの使い手
0996デフォルトの名無しさん
垢版 |
2018/03/16(金) 23:07:33.92ID:9dagKCfe
FileMakerでも禁止だしな
0998デフォルトの名無しさん
垢版 |
2018/03/17(土) 04:37:23.48ID:YYJgzE2Q
うめ
1000デフォルトの名無しさん
垢版 |
2018/03/17(土) 04:38:42.11ID:YYJgzE2Q
999+1
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 74日 8時間 20分 0秒
10021002
垢版 |
Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。

ニューススポーツなんでも実況