[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 09/16 12:29 / Filesize : 299 KB / Number-of Response : 1055
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

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



1 名前:デフォルトの名無しさん [2018/08/24(金) 07:50:35.97 ID:VD4/++xS.net]
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますが、お礼は Python の布教と初心者の救済をお願いします。

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

前スレ
くだすれPython(超初心者用) その38
https://mevius.5ch.net/test/read.cgi/tech/1526522954/

695 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 09:35:33.18 ID:/tw9qCHj.net]
次はないと言割れましたがちょっと不思議なことがあったので質問させていただきます。
sorted関数を使うと、
パブリックドメインのepubで有名なgutenbergのファイル名をソートしていたのですが、
(@public@vhost@g@gutenberg@html@files@31278@31278-h@31278-h-0.htm.htm、@public@vhost@g@gutenberg@html@files@31278@31278-h@31278-h-10.htm.htmllなどというファイル名です)
0. 1.10, 11,12, .2などとソートされるようですが、普通に0,1,2,3,4の順番にできないのでしょうか。
というよりなぜグーテンベルクのファイルだけ、おかしなソートになるのかわかりません。

696 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 09:48:16.33 ID:JqsKq037.net]
数値型は数の大小で比較されるが、
文字列型の数値は文字列として比較されるから数の大小順には並ばない
数値として比較したければ、sort(またはsorted)のkey引数に適切なキー抽出関数を与える必要がある

その本だけがと言っているが、条件を満たしていればどんなリストでもお前の言う「おかしなソート」になる
print(sorted('11', '2', '.1'))

697 名前:656 mailto:sage [2018/10/30(火) 10:00:46.78 ID:/tw9qCHj.net]
>>660
ググったらでてきました。文字列型だと10が2より先に来るようですね。
どうもありがとうございました。

698 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 12:37:59.64 ID:BBRqRtLN.net]
>>656
そんな感じ
ファイルの作成日時は取得する手段がないので諦めて
(独自ヘッダで応答してくれるサーバーを除く)

699 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 12:44:20.01 ID:QArnhM9r.net]
>>652
試してみたけど無理でした
ダブルクリックで開くと問題ないけどtxtのインポートだと開いた時点で改行されるからどうしようも無いのかなこれ

700 名前:デフォルトの名無しさん [2018/10/30(火) 14:52:54.90 ID:mxVOiKCI.net]
bashからpythonプログラムを実行するときに、pycharmで簡単にデバッグしたいんですが、どうすればいいですか?
pythonコードだけの場合のやり方は分かるんですけど
print()いっぱい書くしか無いんですかね

701 名前:デフォルトの名無しさん [2018/10/30(火) 14:55:07.36 ID:mxVOiKCI.net]
>>661
float型に変換しないとちゃんとソートできないよ

702 名前:デフォルトの名無しさん [2018/10/30(火) 15:01:43.41 ID:mxVOiKCI.net]
>>664
解決しました
https://stackoverflow.com/questions/27952331/debugging-with-pycharm-terminal-arguments

703 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 15:02:59.00 ID:o9t78hsF.net]
>>664
pycharm使ってparametersに引数入れてやればいい。



704 名前:653 mailto:sage [2018/10/30(火) 15:46:23.76 ID:74FRV+Zp.net]
>>662
どうもありがとうございます
基本的に作成日の取得は出来ないんですね

705 名前:653 mailto:sage [2018/10/30(火) 16:13:18.69 ID:74FRV+Zp.net]
try:
f = open(local_path, 'rb')
dbx.files_upload(f.read(), upload_path)
f.close()
except dropbox.exceptions.ApiError:
print(dropbox.exceptions.ApiError.error)

Dropboxにアップロードする時、エラーが出た時はプリントするように例外を出したいんですが、
これだと、
AttributeError: type object 'ApiError' has no attribute 'error'
ってエラーが出てしまいます。


try:
f = open(local_path, 'rb')
dbx.files_upload(f.read(), upload_path)
f.close()
except dropbox.exceptions.ApiError as err:
print(err.error)

これだと、エラーがちゃんとプリントされます
なぜ、 as err を付けるとちゃんと動くんでしょうか? 👀
Rock54: Caution(BBR-MD5:1341adc37120578f18dba9451e6c8c3b)


706 名前:デフォルトの名無しさん [2018/10/30(火) 16:47:54.22 ID:mxVOiKCI.net]
pycharmでrun/debug configurationのset wowrking directoryに、プログラムを実行したいディレクトリ(pロジェクトのルート外)を入れても、ファイルが見つからないとエラーがでます
ターミナルでは実行可能です
プロジェクトのルート外のディレクトリで実行するにはどうすればいいいか教えて頂きたいです

707 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 17:27:16.66 ID:o9t78hsF.net]
>>670
ちょっと何言ってんだかわかんない。
working directoryは実行するpyhonスクリプトのディレクトリが勝手に入ると思うのだが。
見つからないと言われるファイルは何?
実行するスクリプトから参照しているファイルじゃないの?
図示してくれ。

708 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 18:23:15.32 ID:LRpQBEf3.net]
>>669
前者はクラス名.変数名(ApiError.error)になっているのでクラス変数を参照しようとしている。
故にApiErrorにerrorという名前のクラス変数がなければエラーになる。

後者はインスタンス名.変数名(err.error)になっているのでインスタンス変数を参照しようとしている。
errorはインスタンス変数なのでエラーにならない。

709 名前:653 mailto:sage [2018/10/30(火) 18:43:42.81 ID:wwkQj2Ri.net]
>>672
どうもありがとうございます
dropbox.exceptions.ApiError as err
これって、
dropbox.exceptions.ApiError


710 名前:errって別名にしただけですよね?

ってことは
err.errorと
dropbox.exceptions.ApiError.error
は結局同じ気がするんですが、違うんでしょうか?
違いがわからないです
[]
[ここ壊れてます]

711 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 19:22:58.06 ID:LRpQBEf3.net]
>>673
違うよ。
ApiErrorはクラス名、errはインスタンス名。
a = MyClass()
って書いたときにMyClassとaは違うものでしょ?それと同じ

712 名前:デフォルトの名無しさん [2018/10/30(火) 19:39:22.54 ID:vHVA3ezu.net]
except E as N:
と書いてある場合は
"Eが例外オブジェクトのクラスだったら例外をNに代入"
という処理になる
他のasを使った文のようにEの別名をNにする訳ではない

713 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 23:12:08.40 ID:tLch1bmf.net]
普通そういう所に、クラス名など来ない

例外インスタンスが来る



714 名前:デフォルトの名無しさん mailto:sage [2018/10/31(水) 00:55:47.26 ID:KgeV0wH8.net]
ConvergenceWarning: Liblinear failed to converge, increase the number of iterations.

sklearnでLinearSVCのグリッドサーチするとこの文章が永遠に出てくるんですけどどういうことですか?調べてもわかりませんでした。

715 名前:デフォルトの名無しさん [2018/10/31(水) 01:29:09.72 ID:C97UeufF.net]
そのままの意味で、毎回の学習が収束まで行ってないからイテレーション回数増やせって事では

716 名前:デフォルトの名無しさん mailto:sage [2018/10/31(水) 01:30:14.36 ID:KgeV0wH8.net]
>>678
増やしても出てくるんですよね…

717 名前:デフォルトの名無しさん [2018/10/31(水) 10:16:21.72 ID:C97UeufF.net]
>>679
学習率が大きすぎるとか

718 名前:デフォルトの名無しさん [2018/10/31(水) 12:17:11.83 ID:/o0RsUYT.net]
1からpythonの勉強始めて、オブジェクト指向とやらで挫折中。
クラスやら継承は何となく理解できて、
どう書けばいいのかも何となくわかるけど、
理解するのに時間がかかりそう。色々なコードを書いて覚えていくしかないのか?
経験者ってここら辺どうなんですか(しっかり理解できているかどうか)

719 名前:デフォルトの名無しさん mailto:sage [2018/10/31(水) 13:08:59.03 ID:gqgWGRur.net]
関数とかと同じで、クラスも便利だなあと思える具体例や機会があれば使えるようになる
何処か見たアドレス帳を作る例は分かり易そうだったけど、あれは何処だったか
でもクラス使わなくてもプログラムは出来るから直ぐに使えるようにならなくても問題ない

720 名前:デフォルトの名無しさん [2018/10/31(水) 13:20:42.47 ID:gqtAU0ur.net]
>>681
スクリプターってクラスを使うばっかりで作る方はあんまりって傾向があるから、無問題ではある。
Cも覚えてライブラリ作りも頑張ってほしいかな。
日本のプログラマーの質が問われるから。

721 名前:デフォルトの名無しさん [2018/10/31(水) 13:31:11.31 ID:zGg5PO0t.net]
日本のプログラマーの質が問われるから。

だってw

722 名前:デフォルトの名無しさん mailto:sage [2018/10/31(水) 13:32:03.51 ID:gc+olMws.net]
"html54200-0.html#anchor001"

と言う文字列の#の前の数字だけ抽出(542000)したいのですが、どのような正規表現を書けばよいのでしょうか?
([0-9]+)(?=#)
ではだめでした。よろしくお願いします。

723 名前:682 mailto:sage [2018/10/31(水) 13:35:03.91 ID:gc+olMws.net]
書き忘れましたが、現状ではre.findall[54200、 0]と言うリストを取得したあと、
join()で542000にすることを考えていたのですが、アンカーから後を取得すると狂ってしまうので、
アンカーから後は抽出したくないのです。よろしくお願いします。



724 名前:デフォルトの名無しさん mailto:sage [2018/10/31(水) 13:40:28.98 ID:fzRw5h8F.net]
正規表現とかいらんだろ

str.lstrip("html")
str[:7]

725 名前:デフォルトの名無しさん mailto:sage [2018/10/31(水) 13:42:08.67 ID:1NzreX+B.net]
re.search("(¥d+).*?(?=#)",s).group(1)

726 名前:デフォルトの名無しさん mailto:sage [2018/10/31(水) 13:43:24.16 ID:fzRw5h8F.net]
ああそこが欲しいのか

str.lstrip("html")
str[:6].strip("-")

727 名前:デフォルトの名無しさん [2018/10/31(水) 13:43:30.37 ID:BEBaW28W.net]
>>671
見つからないと言われるファイルはrun/debug configurationのparametersで指定したものです
>>working directoryは実行するpyhonスクリプトのディレクトリが勝手に入る
それをスクリプトを実行したい場所に変更してるんですけど

728 名前:デフォルトの名無しさん mailto:sage [2018/10/31(水) 13:45:53.85 ID:0yqa0SvH.net]
>>685
(^0-9)|#.* を空文字に置換

729 名前:デフォルトの名無しさん [2018/10/31(水) 13:51:38.68 ID:XAA9QXm2.net]
>>683-684
2ちゃんや5ちゃんの履歴消すしかないな

730 名前:デフォルトの名無しさん mailto:sage [2018/10/31(水) 13:53:01.77 ID:gc+olMws.net]
レスありがとうございます。
>>687
これ以外にも似たようなファイルがあるので、できるだけ一般化しておきたいのです正規表現を考えました。
>>688
お教えいただいたところ申し訳ないのですが、Noneとでてしまいました。私の設定のどこかがまずかったのかしれませんが。

731 名前:デフォルトの名無しさん mailto:sage [2018/10/31(水) 13:55:03.93 ID:1NzreX+B.net]
>>693
¥dの¥はバックスラッシュに直してくれ
[0-9]でもいいよ

732 名前:デフォルトの名無しさん mailto:sage [2018/10/31(水) 14:00:41.64 ID:gc+olMws.net]
検索する文字列にsplit("#")[0]をつけることを思いつきました。
あんまりスマートじゃないかもしれませんがこれで行こうと思います。
皆さんありがとうございました。

733 名前:デフォルトの名無しさん mailto:sage [2018/10/31(水) 14:03:31.31 ID:1NzreX+B.net]
>>690
図示してくれるか、何をどうしているのかという全体の構成がわからないと、
何でつまづいているのかがわからない。
parametersにはsys.argvで受け取りたい内容を入れることはわかってるんだよね?



734 名前:デフォルトの名無しさん [2018/10/31(水) 14:20:03.17 ID:BEBaW28W.net]
>>696
他人の書いたコードがどう動いてるのか理解するためにデバッグしたいと思っていて、全体の構成はよくわかってないんですけど、それだとデバッグはできないってことなんでしかね?
あるファイルが出力される時点で動いてるコードを見たいと思ってるんですけど

735 名前:デフォルトの名無しさん mailto:sage [2018/10/31(水) 14:46:51.62 ID:1NzreX+B.net]
>>697
イマイチわからんけど、
bashでpythonのscriptに何らかの引数を渡して実行したいって事じゃないの?

そうだとすればbashからの引数がscript parmetersの値で、
pycharmでそのスクリプトを開いてデバッグするだけの事だと思うんだけど違うの?

736 名前:デフォルトの名無しさん [2018/10/31(水) 14:54:31.80 ID:BEBaW28W.net]
>>698
parameterで渡したはずのファイルがnot found になって困っているんです
で、そのファイルはcontent root 外なので問題なのかなとか思ってるんですけど

737 名前:デフォルトの名無しさん mailto:sage [2018/10/31(水) 15:00:36.67 ID:1NzreX+B.net]
python側のデバッグ(動作確認)したいだけなら、
引数にこだわらずにダイレクトにファイル指定してやればいいだけだと思うけど?

738 名前:デフォルトの名無しさん [2018/10/31(水) 15:27:06.72 ID:BEBaW28W.net]
いちいち書き換えないといけないんですかね?
せっかくコマンドライン引数で指定できるようになってるのに

739 名前:デフォルトの名無しさん [2018/10/31(水) 15:29:28.35 ID:BEBaW28W.net]
>>695
そういう文字列処理はawkとかperlのほうが簡単だよ

740 名前:デフォルトの名無しさん mailto:sage [2018/10/31(水) 17:36:50.33 ID:DIssBnZo.net]
def gethtml(url, prm=""):
 r = requests.get(url, params=prm)
 r.encoding = 'CP932'
 return r.text

こんな関数でエンコードがCP932(のはずの)サイトを取得して
日本語は普通に表示されてるんですけど
@とかqとかが文字化けしてしまいます。どうすれば文字化けを回避できますか?

741 名前:デフォルトの名無しさん mailto:sage [2018/10/31(水) 18:12:41.93 ID:taLNwoKn.net]
NEC特殊文字が化けてるのか
いま確認環境がないからどうにかできるかはわからん

742 名前:デフォルトの名無しさん [2018/10/31(水) 18:28:43.45 ID:XAA9QXm2.net]
>>> print('@とかqとか')
@とかqとか


ちゃんと表示される

743 名前:デフォルトの名無しさん mailto:sage [2018/10/31(水) 18:37:40.87 ID:DIssBnZo.net]
とりあえず自己解決
対象ページをファイルとして保存した後、codecsで保存したファイルをロードすることで対処できました



744 名前:デフォルトの名無しさん [2018/10/31(水) 20:12:08.83 ID:gHBnMNYM.net]
epubビューアの開発は順調に進んでるのかな

745 名前:デフォルトの名無しさん [2018/10/31(水) 20:40:39.13 ID:/o0RsUYT.net]
>>683 >>682
2年間運用(継続中)してます。
所属部署がクラウドに力入れ始めててpython勉強
しと

746 名前:ッと言われてやってます。取りあえずスクレイピング
できるようになりたいのでコード漁ってるんですが関数さえ
使用してないように見えてて、おっしゃる通りなんですかね
最終的に何か作れるようになりたいけど、何も思いつかないし
何を目指したらいいのやら
[]
[ここ壊れてます]

747 名前:デフォルトの名無しさん mailto:sage [2018/11/01(木) 00:22:16.46 ID:PBz6MbCm.net]
>>685-695
Ruby なら、File.basename の第2引数に、.* を渡せば、. より前の部分を取れる

file_name = File.basename( "html54200-0.html#anchor001", ".*" )
#=> "html54200-0"

>>708
Ruby で、Selenium WebDriver, Nokogiri を使って、
ブラウザで自動ログインしたり、Showroom のアバターを削除したりしてる

他にも、5ch の書き込み内から、画像のURL だけを拾って表示したり、
主に、ブラウザを使った、webサイトの自動テストに使う

その際のPage Object は、典型的なオブジェクト指向による、テスト方法

748 名前:デフォルトの名無しさん [2018/11/01(木) 04:05:25.76 ID:rG6revia.net]
>>708
まずはDomを理解汁

749 名前:デフォルトの名無しさん [2018/11/01(木) 10:34:25.18 ID:z733lC2q.net]
>>708-710
スレチ

750 名前:デフォルトの名無しさん mailto:sage [2018/11/01(木) 10:58:02.80 ID:LBGTfI8S.net]
>>701
言ってる事が矛盾してるんだけど。
>他人の書いたコードがどう動いてるのか理解するためにデバッグ
>いちいち書き換えないといけないんですかね?

理解すれためなら、一回入力するだけでいちいち書き換える必要はないだろ。

751 名前:デフォルトの名無しさん [2018/11/02(金) 23:07:04.01 ID:WjnTpSxg.net]
MySQL connectorの使い方を教えてください。

MySQLのTIME型をSELECTしてfetchoneすると、datetime.timedelta型になってしまいます。
datetime.time型で取得するにはどうすれば良いのでしょうか?

752 名前:デフォルトの名無しさん mailto:sage [2018/11/03(土) 07:29:30.23 ID:ddSYlxYG.net]
>>713
がいしゅつぽ
ttps://teratail.com/questions/141268

753 名前:デフォルトの名無しさん mailto:sage [2018/11/03(土) 10:46:05.35 ID:j00DZJyr.net]
rawで引っ張って自分でconvertする。
列の仕様がはっきりしているなら、たぶんこれが一番速い。



754 名前:デフォルトの名無しさん [2018/11/03(土) 22:09:03.24 ID:+dBdxEJM.net]
>>670
まだサポートされていない機能だったらしいです
一応報告
https://youtrack.jetbrains.com/issue/IDEA-88717

755 名前:デフォルトの名無しさん [2018/11/03(土) 22:14:11.53 ID:+dBdxEJM.net]
pyファイルに引数としてファイル渡して実行しながらデバッグしたいんですけどideでできますか?

756 名前:デフォルトの名無しさん mailto:sage [2018/11/04(日) 00:16:25.00 ID:NVjVjeVc.net]
さすがにできないと困るでしょう。

757 名前:デフォルトの名無しさん [2018/11/04(日) 13:42:02.03 ID:5RY1Lh2I.net]
>>714
これあかんやつやω
環境変わったら動かなくなるぞ

758 名前:デフォルトの名無しさん [2018/11/04(日) 23:14:32.54 ID:mnXqRc1x.net]
Excelの全シートの特定セルから値を抽出したいんですが、

import openpyxl
book = openpyxl.load_workbook('xxx.xlsx')
all_sheet = book.sheetnames
for 抽出 in all_sheet:
print(抽出.cell(row=1, column=1).value)

ってやってもうまくいきません。
ご指導をお願いします。

759 名前:デフォルトの名無しさん mailto:sage [2018/11/04(日) 23:33:00.89 ID:H3HfNEok.net]
Gmail inboxでメール作成する時、文字の色を替えたり背景色を付けたりは、
Pythonにやらせるのはやはり難しいのでしょうか
例えば文章を[b]と[/)で挟んでも、何事も無く……
ご指導を…m(_ _)m

760 名前:デフォルトの名無しさん mailto:sage [2018/11/04(日) 23:45:43.19 ID:f0WItr4A.net]
関数の引数の一つをオプションにしたいのですが
デフォルトの値を関数内で決めたいです。例えばイメージ

761 名前:ニしては

def Function(data, average):

としてaverageのデフォルトの値を引数dataの平均値にしたいです。
average = np.(data)
のようにしてもエラーが出てきます。どのようにすればよいでしょうか?
[]
[ここ壊れてます]

762 名前:デフォルトの名無しさん [2018/11/05(月) 00:12:47.04 ID:WItML0Cb.net]
>>720
all_sheet = book.sheetnames

all_sheet = book.worksheets

>>722
やりたいことはよう分らんが
np.(data)

np(data) #.(コンマ)を抜く
とすればエラーが出なくなるんでは

763 名前:デフォルトの名無しさん mailto:sage [2018/11/05(月) 00:22:33.69 ID:Forp8UuV.net]
>>722
まずエラーメッセージを読む、そしてレスに添え省かない
もしデフォルト引数に書いたなら定義時に評価されるので
None等にしておき呼び出された時に判定して代入するなり



764 名前:デフォルトの名無しさん mailto:sage [2018/11/05(月) 00:28:55.36 ID:8OhTTD0N.net]
>>722
平均を取るのは np.mean() だと思う。(import numpy as npしてればの話だけど)
関数の引数を他の引数のデフォルト値に設定したりはできないので

def Fucntion(data, average=None):
 if average is None:
   avarage = np.mean(data)

と書くのが普通じゃないかな

765 名前:デフォルトの名無しさん mailto:sage [2018/11/05(月) 00:39:16.13 ID:Dut8FIaQ.net]
719です。
>>725で解決しました。
ありがとうございました。

766 名前:デフォルトの名無しさん mailto:sage [2018/11/05(月) 10:25:00.99 ID:h9xlJLA6.net]
Slackでは<{url}|{title}>の形式で書けば、リンクとして表示してくれるので、

slackToken = 'example'
url = 'example.com'
text1 ='あああああ'
text2 = 'タイトルです'
attText = f'aiueo <{url}|{text2}> kakikukeko'

slackData = {
"username": username,
"channel": channel,
"text": text1,
"attachments": [
{
"color": "#39a6e8",
"text": attText,
"thumb_url": thumbUrl
}
]}

requests.post(slackToken, data=json.dumps(slackData))

こんな感じで、requestsを使ってSlackにおくりたいんですが、
title2の1文字目が「<」で最後の文字が「>」だった場合、
Slack上では何故か aiueo <<example.com<タイトルです>>>って表示になって、バグってしまいます。
今はとりあえず、text2の最初と最後が<>だったらその文字を削除してるんですが、text2に<>を含んだままSlackに送るにはどうやるんでしょうか?

767 名前:デフォルトの名無しさん [2018/11/05(月) 13:32:25.59 ID:o5QGnfIr.net]
&lt;
&gt;

768 名前:デフォルトの名無しさん mailto:sage [2018/11/05(月) 13:46:32.33 ID:h9xlJLA6.net]
どうもありがとうございます!

769 名前:デフォルトの名無しさん [2018/11/05(月) 16:48:18.27 ID:0An2vgEj.net]
list.__getitemって何を返すんですか?
調べてもわからなかったんで教えてください

770 名前:デフォルトの名無しさん [2018/11/05(月) 17:18:39.84 ID:o5QGnfIr.net]
a=[1,2,3]
a.__getitem__(1) # 2

771 名前:デフォルトの名無しさん mailto:sage [2018/11/05(月) 17:19:31.32 ID:+kDBf8bs.net]
>>730
スライスの演算をオーバーロードするメソッドやで

772 名前:デフォルトの名無しさん [2018/11/05(月) 18:10:05.24 ID:0An2vgEj.net]
>>731
>>732
heapq.nlargest(n, iterable, key=None)のkeyにlist.__getitem__の結果を入れることに、なんの意味があるんでしょうか。

773 名前:デフォルトの名無しさん mailto:sage [2018/11/05(月) 18:29:42.84 ID:ll2Vxm5g.net]
これのnew = tv[i]っていりますの?
なんかいらないっぽい気がして削っても動いたんだけど
暇で優しい人気が向いたら教えて

tv = ["GOT", "Narcos",
"Vice"]
for i, show in enumerate(tv):
new = tv[i]
new = new.upper()
tv[i] = new


print(tv)

https://github.com/calthoff/self_taught/blob/master/python_ex205.py/



774 名前:デフォルトの名無しさん mailto:sage [2018/11/05(月) 18:33:34.89 ID:ll2Vxm5g.net]
あっれ?この野郎!
本とコードが違うじゃないか
独学プログラマーめ・・・
本だと変数のshowがnewに書き換えられてる

775 名前:デフォルトの名無しさん mailto:sage [2018/11/05(月) 23:28:07.21 ID:i/g7f+lV.net]
>>727-729
Ruby の、CGI.escapeHTML みたいな、HTML エスケープだろ

Python にも、そういう関数があるはず

776 名前:デフォルトの名無しさん mailto:sage [2018/11/06(火) 09:03:03.85 ID:oDFoDpyv.net]
>>734
本が何かわからんけど、
forの中はtv[i] = show.upper()だけで大丈夫。

777 名前:デフォルトの名無しさん mailto:sage [2018/11/06(火) 11:06:31.30 ID:cQb5p7fE.net]
python+gtkでepubビューアを改造している者ですが、
htmlファイルのアンカーのスクロール座標をjavascriptを使わずにpythonだけ取得することはできるんでしょうか?
具体的な用途としては、ブックマークの時のチャプター名や、
Linuxのevince(document viewer)の様に、画面をスクロールして次のチャプターの領域に入ると自動で、
左のチャプターリストビューの選択もそのチャプターのところに移動してほしいのですが、(クリック扱いになると
チャプターの最初に戻されてしまうので、青い選択が移るだけにしたいのです。)
言葉でうまく説明できなくてすみません

778 名前:デフォルトの名無しさん mailto:sage [2018/11/06(火) 11:20:08.33 ID:VRf3OGgv.net]
>>737
ありがとう!
「独学プログラマー」って本です

これが終わったらdeeplearningの本読んでAI作るんだ・・・道は遠そう

779 名前:デフォルトの名無しさん mailto:sage [2018/11/06(火) 17:51:56.07 ID:Zf4d0x7S.net]
htmlで
<td class=" "><a href=" ">TEXT</a></td>
のうちの<a href>内の" "の中身だけを取り出すにはどうすればいいですか?

780 名前:デフォルトの名無しさん mailto:sage [2018/11/06(火) 19:12:51.68 ID:B9fQWZZ6.net]
>>740
何のモジュール使ってhtmlよんでんだよ


セレニウムなら「href属性 取得 selenium python」でググれ

781 名前:724 mailto:sage [2018/11/06(火) 20:09:21.47 ID:QHiQfJwC.net]
724ですけど、変数内に~~や**があるとそれらもSlack側で以下のように反応してしまいました。

~あいうえお~
と波線で囲めば打ち消し線に、
*あいうえお*
だと、太字です。

記号は記号としてポストするにはどうしたらいいんでしょうか?

782 名前:デフォルトの名無しさん mailto:sage [2018/11/06(火) 20:13:57.06 ID:B9fQWZZ6.net]
*→ *
~→ ~

783 名前:デフォルトの名無しさん mailto:sage [2018/11/06(火) 20:14:48.35 ID:B9fQWZZ6.net]
(´Д`lll)&to#は半角でな
*→ &#126;
~→ &#42;



784 名前:724 mailto:sage [2018/11/06(火) 20:28:42.52 ID:QHiQfJwC.net]
>>744
どうもありがとうございます!
試してみます!
今のところ分かったのはこの3つなんですが、記号類をまとめてちゃんと表示する仕組みってありますか?
今ちょっとググってたら
xml.sax.saxutilsのescapeだと<>はエスケープしてくれそうな感じでした。

785 名前:デフォルトの名無しさん [2018/11/06(火) 20:31:38.28 ID:0p0MEBcD.net]
"mrkdwn": false

786 名前:724 mailto:sage [2018/11/06(火) 20:32:44.30 ID:QHiQfJwC.net]
あと、混乱してしまってるんですが、変数textの中にもし<、>、*、~のいずれかが含まれてたら、<、>、&#126;、&#42;に置き換えるには、if文でどう書くんでしょうか?

787 名前:724 mailto:sage [2018/11/06(火) 20:36:27.93 ID:QHiQfJwC.net]
何度もすみません
import xml.sax.saxutils from escape

import htmlのhtml.escape
はどう使い分けるんでしょうか?

788 名前:デフォルトの名無しさん mailto:sage [2018/11/06(火) 20:51:13.02 ID:B9fQWZZ6.net]
>>747
findを使ってtextを検索し、-1よりでかい数が帰ってくるかどうかためす。
if text.find(’<’) > -1 or text.find(’>’) > -1 or....(略)

789 名前:デフォルトの名無しさん mailto:sage [2018/11/06(火) 20:56:52.27 ID:B9fQWZZ6.net]
(つづき)
でもってif文のインデントの中に
text=text.replace('before','after').replace('before','after').replace('before','after').replace('before','after')

beforeにはそれぞれ<、>、*、~を入れて
aterには&#42;

790 名前:とかそういうのを書いておく []
[ここ壊れてます]

791 名前:724 mailto:sage [2018/11/06(火) 20:58:43.90 ID:QHiQfJwC.net]
>>749
なるほど!ありがとうございます!

> if text.find(’<’) > -1 or text.find(’>’) > -1 or....(略)
を途中で改行したい場合はどうやるんでしょうか?
バックスラッシュ付けるっぽいんですが、以下だとエラーになります

if text.find(’<’) > -1 or text.find(’>’) > -1 \
or....(略)

792 名前:724 mailto:sage [2018/11/06(火) 20:59:35.67 ID:QHiQfJwC.net]
>>750
ありがとうございます!!

793 名前:デフォルトの名無しさん mailto:sage [2018/11/06(火) 21:00:46.35 ID:B9fQWZZ6.net]
>>748
前者は基本的に & 、 < 、および > が対象 だが 他の文字もエスケープ汁と命令することが可能

後者は & 、 < 、および > が対象



794 名前:デフォルトの名無しさん [2018/11/06(火) 21:08:58.42 ID:0p0MEBcD.net]
特殊な記号たち
https://api.slack.com/docs/messages/builder?msg=%7B%22text%22%3A%22%60%60%60pre%60%60%60%20*bold*%20%60code%60%20_italic_%20~strike~%22%2C%22username%22%3A%22markdownbot%22%2C%22mrkdwn%22%3Atrue%7D

795 名前:724 mailto:sage [2018/11/06(火) 21:12:17.61 ID:QHiQfJwC.net]
>>753
どうもありがとうございます。
例えば、今回みたいに*や~も含めたいって場合なら前者で指定したらよいって事ですね。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<299KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef