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


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

Pythonのお勉強 Part30



1 名前:デフォルトの名無しさん mailto:sage [2008/11/16(日) 19:09:55 ]
Pythonオフィシャルサイト
www.python.org/
日本Pythonユーザ会
www.python.jp/Zope/
まとめWiki
python.rdy.jp/
関連スレ
find.2ch.net/?BBS=ALL&TYPE=TITLE&STR=python
前スレ
pc11.2ch.net/test/read.cgi/tech/1223543412/

802 名前:デフォルトの名無しさん mailto:sage [2008/12/26(金) 17:22:40 ]
すみませんが、質問です。
ジェネレータを通常のリストに変換する簡潔な方法は無いでしょうか?
ジェネレータが逐次返してくる値を全部まとめたリストを得たいのです。

803 名前:デフォルトの名無しさん mailto:sage [2008/12/26(金) 17:40:37 ]
>>802
[ e for e in G ]

804 名前:デフォルトの名無しさん mailto:sage [2008/12/26(金) 17:40:42 ]
list

805 名前:デフォルトの名無しさん mailto:sage [2008/12/26(金) 17:54:45 ]
>>804
おお、こんなクラスが。ありがとうございました。
> Help on class list in module __builtin__:
>
> class list(object)
> | list() -> new list
> | list(sequence) -> new list initialized from sequence's items

>>803
リスト内包表記もかなり簡潔ですね。


806 名前:デフォルトの名無しさん mailto:sage [2008/12/26(金) 17:56:49 ]
>>791
早速ありがとうございます!!
でも実行すると最後にエラー出てました
EnumWindowsCallback = CFUNCTYPE(c_int, c_int, c_int)

EnumWindowsCallback = WINFUNCTYPE(c_int, c_int, c_int)
でエラー出なくなりました

>>794
きれいなコードですね
ありがとうございました!!


807 名前:デフォルトの名無しさん mailto:sage [2008/12/26(金) 18:21:56 ]
>>796
駄本の著者だな

808 名前:デフォルトの名無しさん mailto:sage [2008/12/26(金) 18:54:21 ]
景品表示法的にグレーな本書いた人ね

809 名前:デフォルトの名無しさん mailto:sage [2008/12/26(金) 19:05:47 ]
ttp://www.amazon.co.jp/dp/4777513688

続編は内容的にガッカリらしい

810 名前:デフォルトの名無しさん mailto:sage [2008/12/26(金) 21:15:32 ]
恥ぱい



811 名前:デフォルトの名無しさん mailto:sage [2008/12/26(金) 21:27:53 ]
中身がハッカーズ大辞典やアンサイクロペディアみたいなノリだったら
あのタイトルでも許せたんだけどな。


812 名前:デフォルトの名無しさん mailto:sage [2008/12/27(土) 05:52:00 ]
イテレータから、n 個ずつとってまとめたタプルを
次々返すようなジェネレータって標準モジュール内にないですかね?
itertools 内を見回しても見当たらないんですけど・・・
結構使う機能なので、使うたびにジェネレータ定義するの面倒だし、
この機能だけのためにモジュール定義するのとかも面倒だし、
標準モジュール内であると楽なんですが・・・

813 名前:デフォルトの名無しさん mailto:sage [2008/12/27(土) 06:03:34 ]
あの、回答まだでしょうか?

814 名前:デフォルトの名無しさん [2008/12/27(土) 08:06:33 ]
正月休みです

815 名前:デフォルトの名無しさん mailto:sage [2008/12/27(土) 10:03:05 ]
from 俺のitertools import pair
def pair(iterable, count):
    """
    >>> list(pair(range(10), 3))
    [(0, 1, 2), (3, 4, 5), (6, 7, 8), (9,)]
    """
    iterable = iter(iterable)
    stop = False
    while not stop:
        y = ()
        try:
            for i in range(count):
                y += (iterable.next(), )
        except StopIteration:
            stop = True
        if y: yield y


816 名前:デフォルトの名無しさん mailto:sage [2008/12/27(土) 10:46:00 ]
>>812
> この機能だけのためにモジュール定義するのとかも面倒だし、

Pythonのモジュール作るのは別に面倒じゃないと思うんだが……
つーかPythonのスクリプトって特別な呪文を唱えずとも全部モジュールとして
使えるわけだし、せいぜい既存のモジュールとファイル名がかぶらないようにだけ
注意しとけばいい

PYTHONPATH, PYTHONSTARTUP, sitecustomize.pyなどの手段で
sys.pathに自分用スクリプトディレクトリを加えておくといいぞ
Pythonみたいにモジュールが使いやすい言語でコードの再利用を考えないのは損だ

817 名前:デフォルトの名無しさん mailto:sage [2008/12/27(土) 11:47:56 ]
>>815>>816
分かりました。
myitertools.py みたいなのを作ってやってみようと思います。

818 名前:デフォルトの名無しさん mailto:sage [2008/12/27(土) 11:57:00 ]
ちょっと違うけど短くかけるな
def pair(iterable, n):
    return izip(*[iter(iterable)]*n)

819 名前:デフォルトの名無しさん mailto:sage [2008/12/27(土) 11:58:45 ]
うへ,tuple って immutable っていうから
+= みたいなのはなしかと思い込んでた…

820 名前:デフォルトの名無しさん mailto:sage [2008/12/27(土) 12:25:32 ]
a += b って a = a + b として処理されるんでないの



821 名前:デフォルトの名無しさん mailto:sage [2008/12/27(土) 12:26:35 ]
もちろんそうだよ。

822 名前:デフォルトの名無しさん mailto:sage [2008/12/27(土) 12:27:53 ]
>>820
__iadd__()がある場合は__iadd__()で処理される
無い場合は、__add()__を用いて処理される

immutableの場合は当然__iadd__()なんてものはないから
普通に__add()__を用いて新しいオブジェクトが作られる

823 名前:822 mailto:sage [2008/12/27(土) 12:28:50 ]
なんだ__add()__ってw
まあ意味分かるよね、ごめん

824 名前:デフォルトの名無しさん [2008/12/27(土) 21:48:30 ]
>>> zip(*[iter(range(10))]*3)
[(0, 1, 2), (3, 4, 5), (6, 7, 8)]
>>> zip(*[iter(range(10))]*4)
[(0, 1, 2, 3), (4, 5, 6, 7)]

825 名前:デフォルトの名無しさん mailto:sage [2008/12/27(土) 22:14:25 ]
>>815 >>818 >>824
この場合は末尾の扱いってどうすべきなのかな

826 名前:デフォルトの名無しさん [2008/12/28(日) 00:07:52 ]
用途によって末尾が必要な場合・不要な場合があるけど、
tupleで返す場合の戻り値は >>824 のように固定長にすべきじゃないかな。

また、>>815は、while ループ一巡辺り最大で
tuple += tuple で count - 1個, (iterable.next(), ) で count 個の不要な一時tupleオブジェクトが作成される。
この場合の作業変数はlistを使う方がベター。

827 名前:デフォルトの名無しさん mailto:sage [2008/12/28(日) 05:15:16 ]
余りが出たら、最後をデフォルト値で埋めてみる

def padpairs(iterable, n, default=None):
  x = chain(iter(iterable), repeat(default, n-1))
  return pair(x, n)

# pair は >>818 の奴

>>> list(padpairs(range(10),3))
[(0, 1, 2), (3, 4, 5), (6, 7, 8), (9, None, None)]
>>> list(padpairs(range(10),4))
[(0, 1, 2, 3), (4, 5, 6, 7), (8, 9, None, None)]

828 名前:デフォルトの名無しさん mailto:sage [2008/12/28(日) 10:12:17 ]
2.6以上ならizip_longestが使える

829 名前:デフォルトの名無しさん [2008/12/28(日) 10:32:42 ]
>>827
GJ

830 名前:デフォルトの名無しさん mailto:sage [2008/12/28(日) 15:09:27 ]
>>828
2.5でもmap使えばいいだろ



831 名前:デフォルトの名無しさん mailto:sage [2008/12/28(日) 15:35:12 ]
愚直にitertools.isliceで。

import itertools

def pair(iterable, count):
    it = iter(iterable)
    while 1:
        a = tuple(itertools.islice(it, count))
        if not a:
            break
        yield a

print list(pair(range(10), 3))


832 名前:デフォルトの名無しさん mailto:sage [2008/12/28(日) 16:46:42 ]
俺も考えてみたけど、>>824のシンプルさには敵わないな

>>> import itertools
>>> make_taker = lambda xs, n: lambda: tuple(itertools.islice(xs, n))
>>> iter_take = lambda xs, n: iter(make_taker(iter(xs), n), ())
>>> list(iter_take(range(10), 3))
[(0, 1, 2), (3, 4, 5), (6, 7, 8), (9,)]

833 名前:デフォルトの名無しさん [2008/12/28(日) 19:14:36 ]
see also itertoolsのドキュメント内 izip と 例 の grouper関数

834 名前:デフォルトの名無しさん [2008/12/29(月) 00:37:20 ]
>>830
mapだとイテレータや巨大なリスト等を扱うとき困る。itertools.imapだと末尾の扱いが若干異なる。
3.0 のbuiltinのmap はitertools.imap相当なので、mapで長さの異なるリストを扱っている場合は3.0への移植の際に注意が必要。
例えば、下のコードは 2.x と 3.0 で結果が異なる。
>>> list(map(lambda *xs:xs, *[iter(range(10))]*3))


835 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 01:42:21 ]
>>832
nが大きな数になる時を考慮するなら、こっち(islice)の方が効率良さそう。


元質問からは少し外れるけど、file-likeオブジェクトや文字列の場合。

try:
from io import StringIO
except ImportError:
from StringIO import StringIO

def split_nbyte(stream, n):
return iter(lambda :stream.read(n),"")

def split_nbyte_str(s, n):
return group_nbyte(StringIO(s), n)


836 名前:デフォルトの名無しさん [2008/12/29(月) 08:17:15 ]

ie = win32com.client.Dispatch('InternetExplorer.Application')
ie.Navigate('www.google.co.jp/')
ie.Visible = True
while ie.busy:
time.sleep(1)
q = ie.document.all('q')
q.Value = 'python'
btnG = ie.document.all('btnG')
btnG.click()

これでGoogleの検索が出来ることが分かったのですが
検索結果を取り出す方法が良く分かりません
どうすれば出来ますか

837 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 08:32:37 ]
print ie.document.body.innerHTML

838 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 08:53:40 ]
っつーか
urllib2 じゃいかんのか
なにがしたいのかによるが

839 名前:デフォルトの名無しさん [2008/12/29(月) 09:06:23 ]
エラーが出ます><

840 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 11:12:01 ]
Python3.0なんですが、urllib2がインポートできないのでそうしました。
あきらかに日本語ドキュメントがおかしいです。存在しません。



841 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 11:14:54 ]
>>840
py3k の使用はもうちょっと待ったほうがいいって。

842 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 11:18:50 ]
今の日本語ドキュメントは2.5用

843 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 11:24:02 ]
3.0ではurllib周り大刷新してたはず

844 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 12:00:25 ]
こんなところで質問する人間が使うバージョンじゃない。> 3.0

845 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 12:16:30 ]
正式リリースされているんだからもっとレスがついていいと思う

846 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 12:42:20 ]
英語読めない奴は2.5系使うのがいいよ。

847 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 12:43:50 ]
英語読めても各種ライブラリを自分で移植したりビルドする気のない奴は(ry

848 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 12:57:35 ]
正式リリースされたからってすぐ飛びつくもんじゃない。

メーカー製品みたいに、ドキュメントからサポート体制からリリースに合わせて
全力で整えてるわけじゃないんだから。

849 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 12:59:05 ]
3.0から入るのも良いけれど、その場合は日本語ドキュメントはアテにならないから
英語ドキュメント読まないと。

850 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 18:34:58 ]
怒濤の勢いで止めとけレスがw



851 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 19:15:45 ]
僕はパイソンを使う権利が無い、資格が無いという事ですね。
こんなだから日本のPythonユーザの数は少ないんじゃないでしょうか。

明らかにおかしい。

852 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 19:27:26 ]
どのバージョンも好きに使う権利があるが、
2.5.2がふさわしい。むしろ2.5.2のThe King。

853 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 19:32:18 ]
>>851
出たばかりだから枯れてないし、情報も出回ってないから、
古いの使っとけ、というアドバイスをそこまで曲解するほうがおかしい。

854 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 19:38:22 ]
>>851は荒らしだろ、相手にするなよ。
でも>>851の親がイカれた奴なのは確かだ。


855 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 19:40:42 ]
>>854
相手するなよ

856 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 19:47:43 ]
ろくにwhat's newも読まずに最新のバージョンを使って、urllib2がインポートできない
からとwin32comを使い、3.0は止めとけばと言われれば僻み丸出しとか馬鹿なの?

857 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 20:31:39 ]
まあそう煽るなよ
初心者ならドキュメントの類を隅々まで読んでいないのも
一番新しい正式リリース版をインストールするのも、別に不思議なことじゃない

>>851はいつもの釣りだろ

858 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 20:33:32 ]
まあ普通にバカだわな

859 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 20:45:17 ]
>>852
っ2.5.4

860 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 22:27:45 ]
またruby厨の降臨かよ



861 名前:デフォルトの名無しさん [2008/12/29(月) 22:47:04 ]
>>847
Ruby使うのやめてPythonにしたのは
各種ライブラリがそろってて
Rubyみたく自分で移植しなくてもよかったから
いまさらPy3kでライブラリ移植する必要が出てくるなら
Ruby使ってた方がまし

862 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 22:48:08 ]
マニュアルの類は読まないってのが世間一般の常識として浸透してるから
そう目ゴジラ立てて怒らんとってくれ。

863 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 22:48:56 ]
アドバイスだよ

864 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 23:00:10 ]
アドバンスなら大いに結構

865 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 23:00:48 ]
なんかレベルというより年齢層が高くなってきたな。

866 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 23:06:28 ]
>>861
ならRuby使ってればいいじゃない
誰も君に強制はせんよ

867 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 23:19:43 ]
エンドユーザーならまだしも開発者がマニュアル読まないとかバカですって言ってるようなもんだろ

868 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 23:20:47 ]
>>867
もう3.0の仕様を隅々まで把握してんのか?
すげーな

869 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 00:12:19 ]
>>861
Pythonは、2.x の間は下位互換性を大事にバージョンアップしてきたし、
2.x -> 3.y は下位互換性失われるけど、 3.x -> 3.y はまた互換性をできるだけ
確保しながらバージョンアップしていく。

Rubyだと、1.8->1.9 でも、 1.9->2.0 でも、きっと互換性の問題出るよ。

870 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 00:28:41 ]
>>868
差分があるしね



871 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 00:34:38 ]
>>868
必要に応じてマニュアルを読む事とマニュアル全てを把握している事は別

872 名前:デフォルトの名無しさん [2008/12/30(火) 01:06:39 ]
>>869
1.8.6→1.8.7でも互換性の問題あるし、
1.8.6でも仕様を替えて互換性がなくなったこともあった。

873 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 01:35:53 ]
Rubyの問題は仕様が明示されていないことだ。
互換性の問題があるのかどうかすら分からないのだ。
こんな言語を仕事に使おうと思う奴は馬鹿かアホかキチガイだと思う。

874 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 01:39:47 ]
Python仕事に使ってんのか
いいな

875 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 01:45:02 ]
3.0 始める人は、What's new, PEP3000 と 2to3 くらいは把握しておいた方がいいと思う。
ライブラリで移動したものも捕捉してくれる。>2to3
- from urllib2 import urlopen
+ from urllib.request import urlopen


ところで、googleでの検索なら API 使ったほうかいいんじゃないかな。

google 検索を urllib でやる場合、UserAgent 等を設定しないといけないので注意。
また、自前で検索結果をパースする場合 BeautifulSoup 使いたいなら 3.0 だとまだちょっと手間がかかる
(windowsユーザにとって)。先日のリリース で BeautifulSoup も 3.0 に対応したみたいだけど、
パッケージ内に diff や パッチを当てるto3.sh が含まれているだけなので、自分でパッチ当てないといけないみたいだし。

876 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 02:07:46 ]
まあその辺は元からのPythonユーザや、このスレ見てる人にはわかってることでしょ

Pythonとやらを試してみっか、と考えた大量の新規ユーザが
地雷にはまってるだろうことは想像に難くないが

877 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 03:03:52 ]
>>876
ライブラリが対応しているかどうかはプロジェクトのページを見れば書いて
あるし、まだほとんどのlinuxディストリビューションでは3.0は標準でイン
ストールされていない。その状況には同意しかねる。
それに公式のダウンロードページにもこう書いてある。
> Note that both Python 2.6 and 3.0 are considered stable production
> releases, but if you don't know which version to use, start with
> Python 2.6 since more existing third party software is compatible
> with Python 2 than Python 3 right now.

ここであえて3.0を選ぼうという初心者が大量にいるとは思えない。

878 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 03:11:25 ]
そんなことはスルーor知らずに3.0選んでこそ真の初心者とも言えるがな

879 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 03:28:55 ]
初心者ならLinux使ってないだろうし
良く知らない言語をちょっと試すかってときに
わざわざ英文なんて読まないよな

880 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 03:34:32 ]
ttp://japanese.joelonsoftware.com/uibook/chapters/6.html



881 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 04:10:14 ]
日本語ドキュメント、書籍、等の外部のリソースの事も考えると
公式サイトの勧めているバージョンが、必ずしも全てのユーザに合ってるとは限らないってのが現状じゃない?
いくら互換性があるといっても、(2.x系)例えば windowsユーザだと、ライブラリのインストールで
ビルド済のインストーラが必要なユーザ層等もいるはずだし。

今は、若干 Python のリリースが先行してる時期だと思う。
早くどれかのバージョンに収束して欲しいという意味を込めても、
出来るだけ新しい安定版を勧めたいとこだけど...

その辺(これからどのバージョンを使うか)の認識って皆どうなんだろう?


882 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 04:16:00 ]
とりあえず、自分の認識をまとめて書き出してみる。(突っ込み歓迎)


これからPythonを試してみる人
ライブラリ類が必要 -> 2.x
日本語ドキュメントも必要 -> 2.5
レンタルサーバで使いたい -> 2.4 が無難?

これから新規にライブラリを書く既存Pythonユーザ
2.xユーザを考慮するなら -> 2.6 ベースでコード書いて2to3

新規にアプリケーションを書く人
ライブラリが必要なら -> 2.x
過去の遺産なんていらない -> 3.0

こんなアドバイス必要ない
-> 複数バージョンをインストール済


883 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 04:39:04 ]
>>866
国語力ないですねw

884 名前:デフォルトの名無しさん [2008/12/30(火) 05:32:48 ]
これからPythonを試してみる人 -> 3.x
ライブラリ類が必要 -> 2.6.x
日本語ドキュメントも必要 -> 2.6.x
レンタルサーバで使いたい -> 2.6.x

これから新規にライブラリを書く既存Pythonユーザ -> 3.x
2.xユーザを考慮するなら -> 2.6.x ベースでコード書いて2to3
新規にアプリケーションを書く人 -> 3.x
ライブラリが必要なら -> 2.6.x

こんなアドバイス必要ない -> どうせ読んでないだろうから何も言いません

885 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 05:44:29 ]
いろいろ、ごにょごにょしようとすると、
ライブラリ便利だなぁ、、

886 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 06:06:17 ]
ライブラリの力を自分の能力と勘違いしてしまいますよね

887 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 07:17:39 ]
>>879
なら、本、買えよ
中央図書館で借りてこいや

888 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 07:29:43 ]
いるいる
勘違いした香具師

889 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 07:39:06 ]
>>879
> 初心者なら(略)読まないよな

帰国子女初心者の僕に対する挑戦と受け取りますた


890 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 07:57:41 ]
BeautifulSoup Release 3.1.0 (2008/12/27)

2.4/3.0 のハイブリッド版。新しい機能の追加等はなし。3つの後方非互換が在り。

1. str()や__str__の振舞が変わる。-> バイト文字を得るにはencode()/unicode文字を得るには decode() を使う。
2. SGMLParserベースからHTMLParserベースに変更。(sgmllibが標準からなくなるため)
此れにより、壊れた HTML文書 を扱えなくなる。
将来のバージョンでは、速度と壊れたHTML文書の扱いのトレードオフで、パーサを選択できるようにする予定。
3. (Python3で) 属性中のエンティティの扱いで、パース時にunicode文字に変換されることがある。
例: <a href="crummy.com?sacré&bleu"> -> Python 3 では é が "\xe9" に。




891 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 08:27:42 ]
3.0対応版出すの早いな。GJ

892 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 08:33:57 ]
ライブラリなかったら他の言語使うし

893 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 09:22:13 ]
ライブラリ使わない開発なんてあるのか?
Hello Python!レベル?

894 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 12:01:18 ]
帰国子女って変な用語だよな
帰国子士にすべき

895 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 13:11:55 ]
谷底から這い上がってきた感じがする

896 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 17:20:59 ]
僕も全然始めたばっかりの初心者だけど
3.0でUnicodeが云々で日本語の扱いがより簡単になった
(2系程複雑じゃない?)から3.0から始めたいなぁ、とか思ったよ。


897 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 17:29:39 ]
今でもUnicodeEncode(Decode)Errorを見るとため息が出る。

898 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 17:37:04 ]
UnicodeEncode(Decode)Error
慣れれば原因想像つくんだけど
途方に暮れてる人も多いんじゃないかな

899 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 17:42:28 ]
初心者にもいろいろいるだろう

Perlから来た人
COBOLから来た人
FORTRANから来た人
とかの「他言語の経験のあるPython初心者」とか
Linux?何それおいしいの?な「Linux初心者&Python初心者」とか
プログラミング言語?何それおいしいの?っていうかWindowsって何?とか

900 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 18:38:37 ]
>>896
>3.0でUnicodeが云々で日本語の扱いがより簡単になった

より簡単になった?
ご冗談はよしてください。



901 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 20:08:41 ]
バイト列とユニコード文字列が別にあって
でも両方にほぼ同じメソッドがあって(encode, decodeまで)
でも中身は別物なので使い分けないといけない

という状況が解消されたんだから
「より簡単になった」と言っていいと思うよ

902 名前:デフォルトの名無しさん mailto:sage [2008/12/30(火) 20:47:36 ]
「マシになった」と言うべき






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

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

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