くだすれPython(超初心者用) その43【Ruby禁止】

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2019/04/16(火) 15:44:21.69ID:jL0dd/ry
★当スレにRubyのソースコード類を書くことを禁ず
☆Ruby等、Pythonではないプログラミング言語での回答類を書くことも禁ず

このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。

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

※前スレ
くだすれPython(超初心者用) その42【Ruby禁止】
http://mevius.5ch.net/test/read.cgi/tech/1552884175/


◆PythonのHome Page
http://www.python.org/

◆まとめwiki
ttp://python.rdy.jp/

◆Pythonのソースコードをそのまま5ちゃんにコピペすると
  インデントが崩れるので
  こういうところ↓にはってきてください
ttp://ideone.com/      Pythonするにはぷち手間あるのがめんどうかなぁ
ttp://codepad.org/      ほぼ直感的に使える。Run codeボタンあり。
ttp://pastebin.com/     まずまずシンプル。
ttp://dpaste.com/      とてもシンプル。消えるまでの日数を長めに指定しる。
ttps://jupyter.org/try    (旧try.jupyter.org)ちょっとめんどうそう
ttps://ja.osdn.net/pastebin/ ログイン必須になりやがった(゚Д゚#)
−−−−天麩羅ここまで−−−−
23デフォルトの名無しさん
垢版 |
2019/04/18(木) 04:26:02.21ID:Ix+T8HxT
>>21-22
構うから消えないんだよ
24デフォルトの名無しさん
垢版 |
2019/04/22(月) 08:25:41.28ID:VELsze7p
基本情報の試験終わったしPythonの勉強始めようと思ってるんだけどオススメのチュートリアルってなに?

あとIDEのオススメもくださいな。
25デフォルトの名無しさん
垢版 |
2019/04/22(月) 10:40:40.72ID:vzs0SdtL
>>24
pythonの公式ウェブサイトのチュートリアルが良くできてると思う
IDEはVScodeかPyCharm
軽くさわるだけならJupyterやGoogle ColaboratoryでもOK
26デフォルトの名無しさん
垢版 |
2019/04/22(月) 11:48:55.09ID:s7hAPPvz
資格商法に
踊らされる
馬鹿な人々
2019/04/22(月) 20:59:51.97ID:r32BHvN5
Excelの特定のセルの値を取得したかったため、以下のHPを
参考に書いたのですがエラーが発生します。
何がおかしいのでしょうか。

https://note.nkmk.me/python-xlrd-xlwt-usage/

Spyder(Python 3.7)を使っています。

・コード
import xlrd
for sheet_name in wb.sheet_names():
sheet5 = wb.sheet_by_name(sheet_name)
print(sheet5.cell(1, 2))

・エラー内容
 File "C:\Users\DEV\Anaconda3\lib\site-packages\xlrd\sheet.py", line 412, in cell
self._cell_types[rowx][colx],
  IndexError: array index out of range
2019/04/22(月) 21:25:34.37ID:r32BHvN5
自己解決しました。
cellに値がないのに取得しようとするとout of rangeになるんですね。
2019/04/22(月) 21:38:51.12ID:r32BHvN5
正確には配列化されていないためでしょうか。
お騒がせしました。
2019/04/23(火) 03:33:37.93ID:5iCdrbSp
gTTSなどのspeechで単語の間に適当な長さを開けるような記号はありますでしょうか?
gTTS(text="Hello World")
gTTS(text="Hello    World")
はスペースは無視されて全く同じ長さの音声になります。
textをHelloとWorldに分けて間にsleepを入れるべきでしょうか?
2019/04/23(火) 10:00:37.69ID:EYeaOvlg
本文のテキストを読み込んで朗読させる機構をつくって
sleepは本文テキスト中に「\s500」(500ミリ秒のsleep)くらいの記号を仕込んでそれを読み込み実行時にsleepと解釈させる
なので¥から始まる記号は増やせる

要するにベタ書きの埋め込みはしない
2019/04/23(火) 14:56:26.65ID:lr6+QRR4
python2.7, pycharmで式の評価に
print u"あ"
を実行すると文字化けたんですがu付けたユニコード文字列でも文字化けすることあるんですか?

ソースコードで実行やcmdでの対話だと"あ"もu"あ"も普通に出力出来るのでpycharmの設定ミスが原因と思いますがユニコード文字列は化けに悩まされないと信じてた初学者の為どうしてこうなるのか分からないです
33デフォルトの名無しさん
垢版 |
2019/04/23(火) 15:48:39.40ID:WWmbVW56
>>32
ロケールは?
2019/04/24(水) 05:49:34.77ID:fO1Zwv8B
キーボード入力ってデフォでできるんですか?
if pressed key_a:
print(hoge)

みたいな
2019/04/24(水) 06:26:11.91ID:fO1Zwv8B
あるキーを押し続けている間、1と2を繰り返し表示し続けるみたいな
こういう場合はwhileを使う感じですか
2019/04/24(水) 08:43:25.98ID:uaiqvHZ+
>>33
すいませんlocale?は調べてもよく分かりませんでした
win7にpython2,7とpycharm入れて始めたばかりというレベルですので…
ネットで調べてもいまいちよく分からないですがとりあえずpython3使ってやります
2019/04/24(水) 09:16:37.44ID:JNkwnKL5
>>36
このへんかな
https://ja.stackoverflow.com/questions/37913/python%E3%81%AEprint%E3%81%A7%E6%97%A5%E6%9C%AC%E8%AA%9E%E3%81%AE%E5%87%BA%E5%8A%9B%E3%81%8C%E3%83%87%E3%83%95%E3%82%A9%E3%83%AB%E3%83%88%E3%81%A7%E5%87%BA%E6%9D%A5%E3%81%AA%E3%81%84/37929
2019/04/24(水) 09:25:09.41ID:aNTRtfcE
>>36
今更2系はやめとけ
3系にしろ
2019/04/24(水) 11:35:03.39ID:o2frI6Oi
俺はJython ヘビ大将
40デフォルトの名無しさん
垢版 |
2019/04/24(水) 13:38:43.10ID:KVKHKBwP
34 35 8964
pygame
2019/04/24(水) 14:25:23.74ID:h6yYrPGn
Windows U15
2019/04/24(水) 17:47:47.08ID:WcGowxU3
Python in Visual Studio Code – April 2019 Release
https://devblogs.microsoft.com/python/python-in-visual-studio-code-april-2019-release/
2019/04/24(水) 20:59:17.05ID:fO1Zwv8B
atom使ってるんですが、以前のセッションを復元する方法はないですか
44デフォルトの名無しさん
垢版 |
2019/04/24(水) 21:32:32.02ID:GlFtpF2h
誰か、Python のどこがいいのか教えてください。
PerlやRubyと同じじゃないんですか?
どんなところが優れてるんですか?

大学の情報科学でもPython やりますが、なぜPython なのか、そこのところで消化不良おこしてます。
2019/04/24(水) 22:10:44.17ID:wCZeFxRg
同じだよ。
はやっているというだけ
大差はない
2019/04/24(水) 23:41:25.64ID:ozqhx65Q
Pythonと他の言語との圧倒的な差は将来性だよ
Perlは10年後にはなくなってるかもしれない
Pythonの需要はどんどん大きくなっていく
Rubyは…
47デフォルトの名無しさん
垢版 |
2019/04/24(水) 23:43:49.10ID:PJ0SFtpz
>>46
Rubyは?ドキドキ
2019/04/25(木) 00:23:36.34ID:0BWSPv0b
なんだかんだいってRubyがガチで戦える相手はPHPだけ
2019/04/25(木) 00:29:46.77ID:X6smEgNz
>>44 Python は、文法的には奇をてらわずに誰でもわかりやすくしているからプログラミングの初心者教育にも最適であり、

どんな言語で書いたものとも結び付けられるという拡張性で中心的な言語となってるんだと思う。

どんなコンピュータの上でも動く汎用性とコンパクト性。
2019/04/25(木) 00:34:13.25ID:unRAfYky
>>47
Rubyはもう死んでるw
2019/04/25(木) 00:36:43.39ID:unRAfYky
Python>C#>javaScript>他の言語>Ruby
2019/04/25(木) 00:41:45.77ID:X6smEgNz
インタプリタ言語とコンパイラ言語は排他的ではない。
一長一短。

また、HTML もドキュメント記述言語として別のジャンルであり、排他的なものでもなくJavascriptもHTML の拡張言語的な位置付けだから排他的ではないだろう。
2019/04/25(木) 07:00:48.04ID:dl09H9rk
if input()=="a":
print("hoge")

vs codeでキー入力検知できますか
これでは動かなかったです
54デフォルトの名無しさん
垢版 |
2019/04/25(木) 07:58:53.53ID:1l/c830P
且つ、または の記号って
|| &&  か | &
どちらでも変わらないのでしょうか?
2019/04/25(木) 08:33:20.20ID:X6smEgNz
>>53 動くけどな。 print の前にはタブはあるよね?
2019/04/25(木) 09:31:41.02ID:dl09H9rk
あります
pythonエクステンションを入れた状態で動くんですか?
2019/04/25(木) 09:32:20.95ID:dl09H9rk
別ウインドウが開くようにしないといけないのですか?
2019/04/25(木) 09:52:06.62ID:844ZjriK
>>57
自分の環境だと実行した時点で分割ウィンドウにターミナルが表示されて、
そこに表示される。
2019/04/25(木) 09:57:27.97ID:dl09H9rk
ターミナルは表示されるんですが、そこでキーを入力しても反応はしないです
2019/04/25(木) 09:59:31.28ID:joFhSCDQ
【対処法】Python3.7ではTensorFlowを利用できない..?
https://pycarnival.com/tensorflow_python37/
無邪気にPythonを3.7に上げたらTensorflowが使えなくなった問題
http://deutschina.hatenablog.com/entry/2019/02/05/071710

そろそろPython3.7.xで、TensorFlowは使えるようになりましたか?
2019/04/25(木) 10:05:46.38ID:844ZjriK
>>59
俺も最近vscode使い始めたのでよくわかってないんだけど、
機能拡張とかvscodeのバージョンも関係してるのかな?
ほかのスクリプトはちゃんと動くの?
2019/04/25(木) 10:40:38.70ID:dl09H9rk
↑ああわかりました
ターミナルじゃなくてデバッグコンソールに入力するんすね
使い方わかってなかったdeath
2019/04/25(木) 10:54:47.24ID:dl09H9rk
いや、やっぱ駄目でした
2019/04/25(木) 11:20:27.06ID:dl09H9rk
ターミナルでいけましたね
2019/04/25(木) 11:29:25.38ID:dl09H9rk
公式のpythonリファレンスが小難しいのですが、他に簡単なwikiなどないですか?
threading.timerの使い方わからぬで
2019/04/25(木) 11:34:51.91ID:joFhSCDQ
>>65
ネット検索でわからないのなら、入門書を買ってみたらどうでしょう
2019/04/25(木) 14:07:50.45ID:dl09H9rk
一定間隔で関数呼び出すにはどうしたらいいんでしょうか
treading timerで
68デフォルトの名無しさん
垢版 |
2019/04/25(木) 14:17:44.61ID:duNFhQYy
>>67
三分でもいいからドキュメントみたか?
69デフォルトの名無しさん
垢版 |
2019/04/25(木) 14:19:39.66ID:duNFhQYy
>>67
ちょっとはやとちりした
while とかではだめなの?
70デフォルトの名無しさん
垢版 |
2019/04/25(木) 14:28:12.07ID:duNFhQYy
忘れてください山にこもってきます
71デフォルトの名無しさん
垢版 |
2019/04/25(木) 14:38:07.63ID:bEGEp8iB
>>38 >>36 >>33 >>32
2は来年サポートが切れる。
2019/04/25(木) 16:02:14.71ID:dl09H9rk
>>69
whileでどうやるんでしょうか?
2019/04/25(木) 16:04:09.62ID:dl09H9rk
あっ time sleepか
ありがとう
2019/04/25(木) 16:05:57.53ID:dl09H9rk
いや、やっぱわかってないな、、、
2019/04/25(木) 16:20:58.63ID:mUdxmH/d
>>74
チャットじゃないんだから、もう少し落ち着いて確認してから書き込みな
2019/04/25(木) 16:28:28.67ID:dl09H9rk
http://codepad.org/FyeV2tOZ

これで一定間隔になりますか?
間違いアレば教えてください
2019/04/25(木) 16:28:40.84ID:dl09H9rk
>>75
はい
2019/04/26(金) 08:23:59.42ID:HIZ4wcbL
whileで常に実行させるにはどうしたらいいのですか?
特に条件式など必要ない場合です
2019/04/26(金) 08:35:47.58ID:HIZ4wcbL
http://codepad.org/ufEc1hv5
wh_st = True
press = input()

while(wh_st==True):
print("false")

if(press == "a"):
print("true")
このコードで常にfalseが実行されて、aを押しっぱなしにしたときだけtrueが実行されるようにしたいのですが、これのどこが駄目なんでしょうか
vs codeの環境でデキますか?

whileとはスイッチを切り替えた瞬間に発動されるようですが、はじめからtrueになっていると実行されない感じですかね
2019/04/26(金) 08:59:35.03ID:2lV5FHrM
あまりにもわかってなさすぎるから入門書とかやり直しなさい
input()の代わりに何を使えばいいですか?と質問できるようになったら戻っておいで
2019/04/26(金) 09:04:30.39ID:VOg5D7hj
指定サーバのファイルを参照するとか、ジャンプサーバー経由でどうこうするとかをどうやってやるかが全然イメージ出来ないのですがpythonでも簡単に出来るものなんでしょうか
2019/04/26(金) 09:11:15.50ID:BA5kdkLQ
サーバーの知識とネットワークの知識とプログラミングの知識は別物だから
三つ揃ってたら一人でもできるけどそうでないなら気軽に簡単ですとは言えないかな
サーバー上のファイルを参照するといっても、httpでとるのかsmbでとるのかnfsとか使うのかssh張るのかとか色々あるし
2019/04/26(金) 09:43:09.50ID:F9vaX/W4
ところで>>60には誰か回答を・・・
2019/04/26(金) 10:00:51.99ID:VOg5D7hj
>>82
ありがとうございます
サーバとネットワークの知識は触り程度の理解しか無いのでこの連休中にそれぞれ学んでみたいと思います
2019/04/26(金) 11:38:59.17ID:1QY6I/Wd
連休中にYahooニュースの一覧、詳細、画像まで保存するスクレイピング完成させたいんだけど
1から勉強できるサイトありませんか?
Pascal,VBのみ使えるおっさんてす
2019/04/26(金) 12:27:50.15ID:F9vaX/W4
import matplotlib.pyplot as plt
%matplotlib inline

本を読んでいたら上記サンプルコードがあったのですが、
2行目先頭の「%」はどのような意味があるのでしょうか?
2019/04/26(金) 13:06:09.48ID:JiqdSsr5
>>85
VB使えるならUiPathを使え。
コミュニティエディションはタダで使えるぞ。
しかしその要件ならVBの腕もほとんど発揮することもなくほぼノーコーディングでいけるな。
スクレイピングをサポートするウィザードみたいな機能も付いてるから。
使い方分からなかったらUiPath Academyの初級コース受けろ。
もちろんタダ。日本語。
やりたいことが決まっているのだから、ビデオだけ見て演習はスキップしろ。時間がもったいない。
連休の半分以上は遊んで暮らせることを約束しよう。
88デフォルトの名無しさん
垢版 |
2019/04/26(金) 13:51:35.68ID:pk1a8vBU
>>86
% は python 関係ない
jupyternotebook のマクロみたいなもん
2019/04/26(金) 14:40:14.00ID:F9vaX/W4
>>88
jupiter用ですか、ありがとうございます
2019/04/26(金) 15:53:56.07ID:A/WNBxWE
Ruby, Nokogiri, Selenium WebDriver で、CSS Selector を使った

driver.navigate.to "https://www.yahoo.co.jp/";

doc = Nokogiri::HTML( driver.page_source )

# ニュース一覧
elements = doc.css( "#topicsfb > div.topicsindex > ul.emphasis > li > a" )

results = elements.map( &:text )
puts results

--- 出力 ---
両陛下 皇居外で最後の公務写真NEW
女子中学生襲撃か 男を確保動画
祝日じゃない GWと労働義務写真
盲導犬は救急車NG 誤り謝罪写真NEW
豚コレラ 対策徹底も「限界」写真
史上初 MLBとNFLから1巡指名写真NEW
伊調馨 準決勝でまさかの黒星写真NEW
大竹しのぶ デート報道を否定写真
91デフォルトの名無しさん
垢版 |
2019/04/26(金) 17:54:05.78ID:WZaxoe7p
>>86
jupyterのマジックコマンドというもの
92デフォルトの名無しさん
垢版 |
2019/04/27(土) 04:33:04.43ID:wKdsSOqj
import numpy as np
x=np.array([-1,2,-3,4,-5,6,-7,8,-9,10])

こんなnumpyの配列があります。
0より小さい要素だけを削除したいのですが、
ifを使わずにnumpyだけで行うにはどうすればできますでしょうか?
93デフォルトの名無しさん
垢版 |
2019/04/27(土) 07:00:21.67ID:2v+ScY9b
print (x[x>=0])
2019/04/27(土) 08:10:18.34ID:SL4hq13g
>>93 凄いなこんなことできるんだ。
2019/04/27(土) 10:20:04.65ID:asc+HFb4
>>93
普段js使ってんだけどこれはうらやましい。
arr.filter(x=>x>=0)なんかより簡潔かつ理解しやすい。
2019/04/27(土) 11:42:39.63ID:DfAn5F1E
a = input()
if(a == True):
print("true")
elif(a == False):
print("false")
これで入力されたかどうかを、false か trueで受け取りたいのですが、どうすればいいんでしょうか?
2019/04/27(土) 12:03:25.76ID:ayOw6WNl
>>93 全要素に1を加えるなんてこともできるんだな。
print (x+1)
[ 0 3 -2 5 -4 7 -6 9 -8 11]
2019/04/27(土) 12:46:22.73ID:ayOw6WNl
>>96 input() は永遠に入力を待ち続けるからそんなことはできない。 やろうとすると少し難しそう。
https://qiita.com/johejo/items/8e724110a008b27d6c1f
99デフォルトの名無しさん
垢版 |
2019/04/27(土) 12:56:18.95ID:wKdsSOqj
>>93
ありがとうございました。
本当にとてもシンプルでわかりやすいですね!
2019/04/28(日) 08:18:25.72ID:RSQfBSeG
>>96
https://stackoverflow.com/questions/2408560/python-nonblocking-console-input

クロスプラットフォームだとpygameになるんかね
2019/04/28(日) 09:51:49.78ID:2SIS5FWg
可読性と保守性が高いかという問題は残るな
2019/04/28(日) 10:56:13.38ID:26Oka0XR
atom使用なんですが、おすすめのlinterはありますか?
できればjavascriptなど多言語対応のものがいいです
2019/04/28(日) 12:37:49.12ID:UKOVlWkZ
>>102
atom-beautifyから呼び出せればいいの?
pep8
autopep8
flake8
かな
個人的にはflake8が好きだけどatomから使ったことはない
2019/04/28(日) 15:03:37.75ID:26Oka0XR
有名なアドオンがあるんですね
 ありがとうございます
2019/04/28(日) 15:07:07.09ID:26Oka0XR
linterってやつじゃないと使えないみたいですね
非推奨と表示されちゃいます
2019/04/28(日) 17:34:12.62ID:/pZCuyqc
こちらでの質問が適切かわかりませんが質問させて頂きます。
pythonista3上で↓のソースを参考にDropboxとの同期をさせたいと考えています。
ただソースそのままだとディレクトリ全てが同期してしまいます。
特定ディレクトリのみ同期したいのですがどのように変更すれば良いのでしょうか?

https://gist.githubusercontent.com/moyashi/4b816d7e7ce105163830ba677d127cd4/raw/a21b9763269f3e192b7297faaddd1ce9a7ef0601/DropboxSyncv2.py
2019/04/28(日) 18:59:02.92ID:c5eGKKj6
>>106 pythonista総合スレ【IOSで勉強できる】
http://mevius.2ch.net/test/read.cgi/tech/1540724553/

こっちで聞いた方が良いよ。
2019/04/28(日) 19:06:23.05ID:c5eGKKj6
>>106 PythonistaはiOSの制限でDropboxとの同期が禁止されたり有効になったりしてるから現在どこまで許されているのかよくわからない。
2019/04/28(日) 21:48:34.40ID:/pZCuyqc
>>107
スレチでしたね
誘導ありがとうござました
2019/04/29(月) 13:12:16.59ID:EB4cBsrx
RecursionError: maximum recursion depth exceeded while calling a Python object

このエラーをググっても再帰の深さを変更する趣旨の記事ばかりなのですが、この状態で進め続けていくとどのようなトラブルが起こるのでしょうか
2019/04/29(月) 13:43:56.67ID:qkrgcbcN
>>110
おそらくループを回そうとして、自分を呼び出す、
つまり再帰を行っている可能性が高い
しかもその再帰から復帰する手続きをしていない可能性が高い
メモリーを使い尽くして動かなくなりますね
2019/04/29(月) 17:27:03.08ID:KC30XU77
システムにパイソン入れてそこにモジュールも追加してるけど、仮想環境にインストールすべきだったかな

ゲームでMod使う時も仮想環境にModをインストールするものね
これからゲームのModみたいに致命的なエラーが出たりするのかな
2019/04/29(月) 18:31:19.39ID:scJbKmEl
>>112
仮想環境の意味するところが分からないけどベースシステムにインストールすると色々とトラブルになることもあるよ

ゲームって言ってることから察するにWindowsだと思うけど、公式のPythonならpipenvで、Anacondaならcondaコマンドで環境分けるのが良いと思う

それでも環境変数PATHに追加すると思わぬところでエラーがでる
どうしても環境崩したくないならVMwareやVirtualBoxで別のOS入れるか、あるいはDocker使うかだね
2019/04/29(月) 21:57:28.54ID:6y4sJNDp
仮想環境を使わないメリットがわからん
システムにパッケージ入れてたら、どのパッケージが今作ってるプログラムに必要なのかわからなくなるやん(´・ω・`)
2019/04/30(火) 01:08:11.14ID:tJFiug19
現代の富豪プログラミングですな
生環境に応じて台数分のPCを用意すればいい
2019/04/30(火) 11:38:59.64ID:TMozE8u3
class vector2():
def position():
x = 100
y = 50
------------
import vecter2
position_function = vecter2.cl.position()
print(position_function.x)
print(position_function.y)

モジュールを呼び出すと
print(position_function.x)
print(position_function.y)
の部分で属性エラーになるのですが、どこが駄目なんでしょうか
2019/04/30(火) 11:44:45.89ID:2EfrguiE
positionの引数にselfがない
インスタンス変数の定義は self.フィールド名 への代入で行う
vector2.cl の cl はどこから出てきた
2019/04/30(火) 11:51:18.13ID:qxKnDa1A
そのままだとクラス変数だからvector2.xとvector2.yは存在するから呼び出せる
def position(self): self.x, self.y = 100, 50
としてインスタンス変数にすれば解決する
詳しいことはpythonのクラスについてもう一回勉強し直せ
2019/04/30(火) 12:15:35.41ID:TMozE8u3
clは間違いです ごめんなさい
またselfですか
これわけわかんないです
120デフォルトの名無しさん
垢版 |
2019/04/30(火) 13:27:40.29ID:k9+qjStF
お代は結構ですのでこのままお引き取り頂けないでしょうか
2019/04/30(火) 15:22:56.43ID:TMozE8u3
いやです
2019/04/30(火) 15:52:59.80ID:TMozE8u3
>>118
vector2.xではアクセスできないっぽいですが
123デフォルトの名無しさん
垢版 |
2019/04/30(火) 17:41:39.31ID:k9+qjStF
事は穏便なうちに収めた方がお互いの得になると思いませんか
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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