トップページ | Python 標準ドキュメント | 事例集 | アーティクル | リンク集 | ダウンロード | サイトマップ 
468x60サイズバナー・シリーズC Simple Fun and Indented
コンテンツ
はじめに - このサイトを立ち上げるに当って一番の問題はいかにラクしてコ...
お題:1 copy.py - 入力をそのまま出力へコピーするプログラムを作成してください...
お題:2 charcount.py - 入力ファイル内の文字数をカウントして出力するプログラムを作...
お題:3 linecount.py - 入力ファイル内の行数をカウントして出力するプログラムを作成...
お題:4 wordcount.py - 入力ファイル内の単語数をカウントして出力するプログラムを作...
お題:5 count.py - お題2、3、4で作成したcharcount.py、line...
お題:6 detab.py - テキストファイルを読み込み、タブをスペースに展開して出力す...
お題:7 entab.py - お題6の逆、スペースをタブに展開して、出力するプログラムを...
お題:8 compress.py - 入力されるデータを圧縮して出力するプログラムを作成してくだ...
お題:9 expand.py - お題8のcompress.pyで圧縮した結果を入力し、元の...
お題:10 crypt.py - 入力データを暗号化して出力するプログラムを作成してください...
アーティクル
 
Python Powered
Powered by Zope
PyJUG網元衆










お題:2 charcount.py

入力ファイル内の文字数をカウントして出力するプログラムを作成してください(入力は全て標準入力、出力は標準出力、文字はアスキー文字のみ、スペースやタブなど空白文字も1文字としてカウント)。要はファイルサイズを算出するプログラムです。

kankun at osa.att.ne.jpさんのお答え

#!/usr/bin/env python
"""
count size of data from stdin
"""
import sys

data = sys.stdin.read()
print len(data)

toda_takahiro at h4.dion.ne.jpさんのお答え

我々は今、longではファイルサイズさえも勘定できない時代に生きているのね。

import sys

def charcount(fsrc, bufsize=16*1024):
    """charcount(fsrc[, bufsize=16*1024]) -> size
    """
    count = 0L
    while 1:
        buf = fsrc.read(bufsize)
        if not buf:
            break
        count += len(buf)
    return count

print charcount(sys.stdin)

印刷用ページ
Copyright © 2001-2012 Python Japan User's Group.

警告当サイトの文書・画像等のコンテンツの著作権は、各コンテンツの作成者、もしくは日本Pythonユーザ会に帰属します。
 また、日本Pythonユーザ会はサイト内のコンテンツに他のプログラミング言語からの乗り換えを誘発する恐れのある表現が多々あることを認め、予めお詫び申し上げます。