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


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

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



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

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

前スレ
くだすれPython(超初心者用) その4
pc12.2ch.net/test/read.cgi/tech/1243160751/

関連スレ
Pythonのお勉強 Part35
pc12.2ch.net/test/read.cgi/tech/1253535109/

477 名前:472 mailto:sage [2009/12/16(水) 01:05:39 ]
>>476
えっ!?

478 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 05:37:59 ]
Python3だと関数アノテーションってのがあるな

479 名前:472 mailto:sage [2009/12/16(水) 07:18:48 ]
>>478
ttp://www.python.org/dev/peps/pep-3107/
これですね。よさそうですね。
やっぱり、型が何かって記述はそれ程重要視されてない感じですね。

480 名前:468 ◆R9u5o717Q6 mailto:sage [2009/12/16(水) 20:51:09 ]
>>473
executeにbegin transactionの文を送っていいのか調べてたらそもそも勘違いをしていたようです

実のところ
ttp://www.python.jp/doc/2.5/lib/sqlite3-Controlling-Transactions.html
sqlite モジュールがトランザクション状態を把握する必要があるので、
SQL の中で OR ROLLBACK や ON CONFLICT ROLLBACK を使ってはなりません。

というのを馬鹿な勘違い起こして、BEGINもダメみたいに解釈してました。
そのためbeginの代替方法ありませんかという質問に至っていました
executeにbegin transaction投げてみます
ご迷惑おかけしました

481 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 21:28:23 ]
誰も必要とはしないけど一応結果を
Connection オブジェクトで
execute(u'begin exclusive')
すればいいだけでした

482 名前:デフォルトの名無しさん [2009/12/18(金) 04:04:03 ]
みんなのPythonを半分以上(7割くらいかな)読んだが
これってソフトを作成できるスキルが身に付いたとは思えない…
最後まで読め?

483 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 04:38:03 ]
no

484 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 04:38:15 ]
>>482
最後まで読まなくてもいいよ
ただページをパラパラめくって何が書いてあったか程度には把握しておくこと
あとで必要になったら読み返せばいい

で、実際に何か役に立つものを作ろうと思ったら周辺知識が必要
どんな周辺知識が必要かは作りたいソフトによる

どういうソフトを作りたいか具体的に言えば
あれを勉強しろだのこれを読めだのこのライブラリ使えだの答えが返ってくると思うよ

485 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 10:39:28 ]
だったら読まない



486 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 11:25:04 ]
そもそも、あの本は初歩的なことしか書いてない

487 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 13:41:41 ]
基礎は大切ですよ

488 名前:482 [2009/12/18(金) 20:57:03 ]
>>484
ありがとうございます。
為替のメールソフト(設定のレートになったらメールを送信する)
を作りたいと思っております。

メールを送るのは調べれば大丈夫だと思います。
わからないのは為替レートを別ページなどから参照?するような工程です。
なにかアドバイスがあればお願い致します。


489 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 00:55:33 ]
ログイン付きページから参照サンプル。
ドメイン名称ってのはログインダイアログのタイトルとかに出てくる

import urllib2
auth_handler = urllib2.HTTPBasicAuthHandler()
auth_handler.add_password('ドメイン名称', 'ホスト名', 'ユーザ', 'パス')
opener = urllib2.build_opener(auth_handler)
urllib2.install_opener(opener)
data = opener.open('http://ホスト/ページ').read(100000)

あとはがんばってHTMLを解析するがよろし。

490 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 02:01:01 ]
>>488
> わからないのは為替レートを別ページなどから参照?するような工程です。
例えば自分のWebページやBlogなんかに為替レートを埋め込んで
表示したい、とかそういうこと?

そういうパーツならたくさん配布されてるからそれを使う
自前で作るのならまずは為替レートを取得するところまでやってみては
為替レート API でぐぐるといい

491 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 02:44:19 ]
本気なら
ttp://www.xignite.com/Products/Catalog.aspx
軽くなら、自分の使ってるFX業者のページを解析していればいいんじゃね?

492 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 17:58:47 ]
cursesが詳しく紹介されている日本語のサイトありませんか?

493 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:44:47 ]
unicode(s, 'shift-jis')
のsに丸囲み数字 -> @ が入ってるとエラーになるみたいなのですが、変換させる方法はないのでしょうか?
unicodeにも丸囲み数字はあるらしいのですが・・・・・・

sが「あいうえお@」のときのエラー内容
UnicodeDecodeError: 'shift_jis' codec can't decode bytes in position 10-11: ille
gal multibyte sequence

494 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:47:08 ]
何度も出てる話題だけど、 shift_jis には@なんて文字は無いからエラーになってるだけ。

お前が使っているのは Shift-JISに Microsoft の拡張が入ったもので、
cp932 とか Windows-31J とかいう名前の文字コード。

495 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:58:42 ]
www.nicovideo.jp/watch/sm9127380



496 名前:493 mailto:sage [2009/12/21(月) 01:00:49 ]
>>494
cp932にしたところ上手くいきました。
ありがとうございました。

497 名前:デフォルトの名無しさん [2009/12/21(月) 07:35:23 ]
Windows上でPythonで書いたスクリプトを、PythonがインストールされていないWindows PCでも動くように実行ファイル.exeにすることは可能ですか?


498 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 07:41:27 ]
py2exeとか有るよ。

499 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 07:44:07 ]
P言語
【プログラミング】
・本格的な汎用プログラミング言語には馴染めない連中が好んで使うPerl、Python、PHPあたりのあたまに「P」がつくスクリプト言語のこと。

500 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 08:37:41 ]
本スレでどうぞ

501 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 09:36:52 ]
「本物のプログラマーはパスカルを使わない」ってことだな

502 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 14:23:59 ]
ウィンドウ内外でマウスのクリックが押されている状態かどうかを取得する方法はありますか?
押された時と離された時に実行されるものでもいいです。

pyautoというものを見つけたのですがキーボードのタイピングはフック出来たのですが
マウスのクリックは出来なさそうなので(僕が理解してないだけかもしれないですが)。

よろしくお願いします。






503 名前:497 [2009/12/21(月) 18:47:45 ]
>>498
ありがとうございます。
そちらを勉強してきます。

504 名前:502 mailto:sage [2009/12/21(月) 19:40:05 ]
すいません、自己解決しました。
pyHookってモジュールで出来ました。

505 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 06:56:24 ]
C/C++の知識はあるのですが、今までインタプリタ言語を使ったことがありません。
この度新しくインタプリタ言語としてPythonを(日々の作業のお供としても役立ちそうなので)学ぼうとしているのですが、何で勉強するのがいいでしょうか。
書籍やウェブなどありそうですが、最近Pythonのメジャーバージョンアップがあったとも聞いています。
オススメを教えてください。お願いします。



506 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 07:17:46 ]
>>505
公式チュートリアルをどうぞ
www.python.jp/doc/release/tut/tut.html
わかんなかったらここで聞けば誰かが優しく教えてくれます

Pythonには2.x系列と最近出た3.x系列があるけれど、
3.xはまだ殆どの人が使ってないので安心して2.x系列を勉強してください
バージョンは2.5以上(最新版は2.6.4)なら多分間違いないです

507 名前:505 [2009/12/22(火) 11:43:01 ]
>>506
ありがとうございます。
現状につきまして
Pythonには便利なモジュールが多くあるが、まだPython 3.x系列には対応しているものが少ない
という認識でよろしいでしょうか?

508 名前:デフォルトの名無しさん [2009/12/22(火) 14:31:56 ]
www.gizmodo.jp/2009/12/post_6513.html

509 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 14:46:57 ]
新手のナンパだな

510 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 23:23:29 ]
c言語を軽くさわった程度の者です。

x = 'abcde'

x[1] → 'b' (インデクシング)
x[1:3] → 'bc' (スライス)
x[1:-1] → 'bcd' (スライス)

これの法則性がわかりません。


511 名前:510 mailto:sage [2009/12/22(火) 23:25:23 ]
のでどなたか教えていただけませんでしょうか。
よろしくお願い申し上げます。

512 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 23:37:16 ]
>510 の質問の意図がわかりません。
のでどなたか教えていただけませんでしょうか。
よろしくお願い申し上げます。

513 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 23:39:08 ]
>>508
ttp://www.youtube.com/watch?v=ihXtbB-4GWw
すげーな

514 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 23:49:27 ]
>>512
…死ねばいいのに


515 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 00:01:08 ]
x[1:-1]=x[1:len(x)-1]
こんな感じでいいか?



516 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 00:20:58 ]
>>510
x[1]はCとあんまり変わらない。これはわかるとおもう。
x[1:3]みたいにコロンで区切られてた場合はスライスといって、
文字列の(正確にはシーケンスの)一部を取得できる。
x[1:3]だと、x[1]からx[3]の手前までだから"bc"。
あと、マイナスを使えば反対から数えられるから、x[1]から最後の一つ手前までで"bcd"。
リスト関係の処理はほんとに便利にできてるので勉強して損はない。

あとインデクシングって、「インデックスをつけること」だから意味がぜんぜん違うぞ。

517 名前:デフォルトの名無しさん [2009/12/23(水) 00:23:34 ]
x[:]

518 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 00:26:26 ]
ちなみに
x[:] → 'abcde'
x[-1] → 'e'
x[:-1] → 'abcd'
x[-1:] → 'e'

519 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 00:30:15 ]
要するに、x[a:b]のときはx[a]からx[b]の一つ手前(x[b-1])までになる。
ついでに、x[a:]はx[a]から最後までで、x[:b]は最初からx[b-1]まで。

520 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 01:06:53 ]
>>110
分かりにくいだろうから、説明画像をぱぱっと作った。
ttp://up.mugitya.com/img/Lv.1_up108952.png

というか、こういう画像はどっかにもあった気がするが…。

521 名前:デフォルトの名無しさん [2009/12/23(水) 01:10:33 ]
x[n] はcとか同様n+1番目の要素
x[a:b] は要素の区切り位置でa〜bの範囲の要素集合
と考えるとラク
"qwerty"なら
| q | w | e | r | t | y |
0  1  2  3  4  5  6

522 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 03:57:06 ]
x[]

523 名前:512 mailto:sage [2009/12/23(水) 08:24:17 ]
>>515-522
大変分かりやすい解説をいただき、
皆様ありがとうございます。

インデクシングという用語につきましては
> Python入門第2回 Pythonの文法
> ttp://www.f7.ems.okayama-u.ac.jp/~yan/python/python02.html
ここからのコピペでした。。。


524 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 09:33:21 ]
インデクシング indexing で別に間違ってないよ
印を付けるのと添え字で参照する、どちらの意味かは文脈から明らかだし

docs.python.org/tutorial/datastructures.html#tuples-and-sequences
> 5.3. Tuples and Sequences
> We saw that lists and strings have many common properties,
> such as indexing and slicing operations.

あと推薦図書スレからコピペ

Python 3 プログラミング徹底入門
著:マーク・サマーフィールド(Mark Summerfield

525 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 13:01:23 ]
>>524
ありがとうございます。




526 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 14:20:09 ]
>>> x='abcd'
>>> x.split()
['abcd']
>>> x[:]
'abcd'
>>> x.split('')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: empty separator
>>>

['a', 'b', 'c', 'd']
というリストにしたいときはどうすればいいでしょうか?

527 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 14:24:46 ]
>>526
list(x)

528 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 14:32:46 ]
>>527
ありがとうございます
なんかオブジェクト指向っぽくないですね

529 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 14:42:07 ]
perl に毒されすぎワロス wwww

530 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 14:43:15 ]
listオブジェクトのコンストラクタにイテレータブルなオブジェクト入れたらlistに変換できる、
って話だから思いっきりオブジェクト指向だぜ。

なんでもメソッド主義ってわけじゃないのは確かだが。

531 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 14:48:16 ]
>>> x[:]='abcd'
>>> x
['a', 'b', 'c', 'd']

532 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 14:49:57 ]
そんな黒魔術いらんがな

533 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 14:50:12 ]
>>530
len(x)
4
これはlenオブジェクトのコンストラクタにカウンタブルなオブジェクトを入れたんですね
わかります

534 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 14:50:38 ]
ていうか動きすらしないよなw
引っかかった漏れ乙

535 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 14:53:38 ]
>>534
>>> x=[]
>>> x[:]='abcd'
>>> x
['a', 'b', 'c', 'd']
スマソ




536 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 14:55:34 ]
>>533
lenはオブジェクトじゃねえよw

537 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 14:58:02 ]
>>536
オブジェクト指向に毒されてる人を皮肉ったんだろう

というか>>535が動いて悔しい
リファレンス読んでくる

538 名前:デフォルトの名無しさん [2009/12/23(水) 14:58:48 ]
wxWizardで次のページに進ませるにはどうしたらよいのでしょうか?

def Process(self):
  e = wx.wizard.WizardEvent(wx.wizard.EVT_WIZARD_PAGE_CHANGING)
  self.wizard.ProcessEvent(e)  #

wxWizardEventオブジェクトを生成してwxWizardオブジェクトのProcessEventメソッドに
渡していますが上手くいきません。

Traceback (most recent call last):
  File "C:\Documents and Settings\user\My Documents\python\testwizard.py", line 169, in Process
    self.wizard.ProcessEvent( wx.wizard.EVT_WIZARD_PAGE_CHANGING )
  File "C:\Program Files\python\lib\site-packages\wx-2.8-msw-unicode\wx\_core.py", line 3863, in ProcessEvent
    return _core_.EvtHandler_ProcessEvent(*args, **kwargs)
TypeError: in method 'EvtHandler_ProcessEvent', expected argument 2 of type 'wxEvent &'

539 名前:538 mailto:sage [2009/12/23(水) 15:04:17 ]
ごめんなさい。エラーメッセージが別のものでした。

Traceback (most recent call last):
  File "C:\Documents and Settings\user\My Documents\python\testwizard.py", line 167, in Process
    e = wx.wizard.WizardEvent(wx.wizard.EVT_WIZARD_PAGE_CHANGING)
  File "C:\Program Files\python\lib\site-packages\wx-2.8-msw-unicode\wx\wizard.py", line 84, in __init__
    _wizard.WizardEvent_swiginit(self,_wizard.new_WizardEvent(*args, **kwargs))
TypeError: in method 'new_WizardEvent', expected argument 1 of type 'wxEventType'


540 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 15:04:56 ]
>>537
>>536 は結局 x[:]=list('abcd') ってことでは?
perl っぽいが

541 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 15:18:30 ]
なにがperlっぽいのかよく分からない

542 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 15:19:11 ]
lenが嫌ならいちいち__len__呼んでろよ。

543 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 15:52:50 ]
>>540
www.python.org/doc/2.6/reference/simple_stmts.html#assignment-statements
"If the target is a slicing:" での説明からすると、>>540 の文や

>>> x = ['a']
>>> x[:] = ['a', 'b', 'c']
>>> x
['a', 'b', 'c']

はまだ理解できるんだけど、>>535

>>> x=[]
>>> x[:]='abcd'
>>> x
['a', 'b', 'c', 'd']

は左辺と右辺の型が list と str で異なってるから
> The assigned object should be a sequence object of the same type.
に違反してエラーになりそうな気がするんだけど、そうはならない
気味悪いから誰か説明してくださいお願いします

544 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 16:08:09 ]
スライシングの右側はイテレータならなんでも良かったはず。

545 名前:544 mailto:sage [2009/12/23(水) 16:16:02 ]
日本語がおかしかった。
リストのスライシングの代入文では、右辺にイテレータブルなオブジェクトをとる。

>>> x = []
>>> x[:] = {1: 'a', 2: 'b'}
>>> x
[1, 2]




546 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 16:16:38 ]
>>544
>>> L = []
>>> L[:] = open('c:/python26/license.txt')
>>> L[:5]
['A. HISTORY OF THE SOFTWARE\n', '==========================\n', '\n', 'Python w
as created in the early 1990s by Guido van Rossum at Stichting\n', 'Mathematisch
Centrum (CWI, see www.cwi.nl) in the Netherlands\n']

本当だ。見なかったことにしよう

547 名前:544 mailto:sage [2009/12/23(水) 16:25:02 ]
なぜ見なかったことにするんだw

ストリングを一文字ずつリストに入れるには list('abcd') が一番いいと思うよ。

548 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 16:30:52 ]
可読性を最大にするなら
[x for x in 'abcd']
どうみたって1文字ずつ分解してる

549 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 18:00:29 ]
TOOWTDIはどこいった...

550 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 18:06:20 ]
      >>544を信じますか?

   信じる         → 信じない


よしこれで俺のPythonは清いままだ

551 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 18:42:50 ]
>>> x=(1,2,3)
>>> y=[0,2,4,6,8]
>>> y[1:4] = x
>>> y
[0, 1, 2, 3, 8]

これでエラーが出て欲しいと申すか

552 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 18:44:32 ]
そんなこというなら*argsだってそうだ
from __future__ import print_function
print(*open('C:\\Python26\\LICENSE.txt'))

**kwargsだってdictっぽければいい
class Kwargs(object):
def __init__(self, **kwargs): self.kw = dict(kwargs)
def __getitem__(self, name): return self.kw[name]
def keys(self): return self.kw.keys()

def dump(**kwargs): print kwargs
dump(**Kwargs(a=1))

553 名前:デフォルトの名無しさん [2009/12/23(水) 23:14:04 ]
Windows XP上で、
標準入力から入力されたパスを調べて、
1.実在するディレクトリだったらそのディレクトリとサブディレクトリの中のファイルのフルパスの一覧を標準出力に出力する。
2.実在するファイルだったらそのフルパスを標準出力に出力する。
3.実在しないパスだったらエラーを標準出力に出力する。

こんなPythonスクリプトをどなたか書いて下さいませんか?


554 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 23:44:25 ]
Python の宿題ここで答えます Part 2
pc12.2ch.net/test/read.cgi/tech/1258320456/

555 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 23:56:58 ]
>>554
ありがとうございます。
行ってきます。




556 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 06:44:33 ]
>>551
めっそうもございません
お許しください

メモ
>>> a = [0, 1, 2]
>>> a[1:2] = 'abcde'
>>> a
[0, 'a', 'b', 'c', 'd', 'e', 2]

557 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 12:05:17 ]
空飛ぶモンティパイソンを見ようと思うんだが
40thアニバーサリーBOX買っとけばいいのか?

558 名前:デフォルトの名無しさん [2009/12/24(木) 14:28:39 ]
>>538-539 おながいします

559 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 16:55:54 ]
>>538-539 おなにいします

560 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 20:24:26 ]
test

561 名前:デフォルトの名無しさん [2009/12/26(土) 14:54:36 ]
リストaに対して
a[len(a)]

a[len(a):]
を参照したり、代入したらエラーになりますか?
それともC系みたいに未定義の動作になりますか?


562 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 14:57:37 ]
>>561
全く問題ない

Cで未定義だというのも引っかかるものがあるんだが・・・・
未定義になる例を書いてCスレで一度質問した方がいいぞ

563 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 14:58:41 ]
んなわけないだろ俺死ね
忘れて下さい

564 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 15:09:24 ]
>>561

>>> a = [1, 2, 3]
>>> a[len(a)]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: list index out of range

>>> a[len(a):] = ['a', 'b', 'c']
>>> a
[1, 2, 3, 'a', 'b', 'c']

>>> a[100:] = [1]
>>> a
[1, 2, 3, 'a', 'b', 'c', 1]

スライスへの代入はちと特殊
>>544あたりでやってるからそっち読んでね

565 名前:561 mailto:sage [2009/12/26(土) 17:11:26 ]
>>562-564
ありがとうございます。
> >>> a = [1, 2, 3]
> >>> a[len(a)]

> >>> a[len(a):] = ['a', 'b', 'c']
> >>> a
> [1, 2, 3, 'a', 'b', 'c']
はわりとすんなり納得しましたが
> >>> a[100:] = [1]
> >>> a
> [1, 2, 3, 'a', 'b', 'c', 1]
はびっくりしました。
こういう仕様なんですね。




566 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 13:53:10 ]
ここでいいのかどうか分かりませんが教えてください
python で imap でメールを読んだものを html に出力すると
ヘッダ中のメールアドレスなどが <hoge@fuga.hage> になっている部分だけが
表示されません
たぶん <〜> で囲まれた部分が html のタグだとブラウザが解釈してしまうからだと思うのですが
python でこれを escape するにはどうするのが一般的でしょうか?

567 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 13:58:45 ]
>>566
str.replace
str.translate
cgi.escape
xml.sax.saxutils.escape

568 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 16:42:24 ]
>>> 2**10**4
19950631168807583848837421626835850838234968318861924548520089498529438830221946
63191996168403619459789933112942320912427155649134941378111759378593209632395785
とても長いので中略
70029097668650568557157505516727518899194129711337690149916181315171544007728650
57318955745092033018530484711381831540732405331903846208403642176370391155063978
90007428536721962809034779745333204683687958685802379522186291200807428195513179
48157624448298518461509704888027274721574688131594750409732115080498190455803416
826949787141316063210686391511681774304792596709376L

と表示されました。
2も10も4も普通の整数型だと思うのですが、
演算結果が自動的にlongな整数になっています。
これはどうしてでしょうか?
オーバーフローしそうになったら自動的にこうしてくれるのでしょうか?



569 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 16:47:23 ]
そうです

570 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 16:48:01 ]
>>569
ありがとうございます。
あと、
# coding: shift-jis
って書いてあるプログラムを見かけるのですが、
これはShift-JISで書いている場合は常に付けた方がよいものでしょうか?


571 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 16:55:11 ]
>>570
u'そうですね'
をつねに使ってるなら無意味
'そうですね'
とかやってるなら書いといた方がいい

572 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 16:57:43 ]
>>570

2.x系はデフォルトエンコーディングがASCIIなので、ソースコードに非ASCIIな文字を使ってるなら付ける必要あり。
>>571はダウト

573 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 16:57:48 ]
>>571
なるほど。
お世話になり、ありがとうございました。

574 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 16:58:47 ]
>>572
# coding: shift-jis
の記述じゃデフォルトエンコーディングはかわんねーだろ

575 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 16:59:01 ]
>>572
自分が常にこれからもShift-JISで書き続けるとして、
# coding: shift-jis
と付けている分には悪いことはありませんか?



576 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 17:04:47 ]
>>574
ソースコードのデフォルトエンコーディング。という意味でした。



577 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 17:19:29 ]
print文の後ろに,が付くか付かないかで改行されるかどうかが決まるのでしょうか?

付けると改行されず、付けないと改行される、でよろしいですか?







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

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

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