python - 如何统计 文本 中的 空格数 和 数字 的个数 ?
怪我咯
怪我咯 2017-04-17 13:13:07
0
2
957

Python新手求教,还望详解!

想要实现实现的功能:
统计一个文本中的空格数和数字的个数。

具体如下:
文本:

4 8 15 16 23 42     520 I LOVE LOST.

得出结果:

number_counts = 7
space_counts = 13  #42和520之间有5个空格,4~42之间都是一个1个空格

更新部分:
根据 @banagoo 提高的答案,我的代码:(还是有问题?)

import os
os.chdir('/Users/apple/Desktop/Python/chapter')
file_name = "lost.txt"
space_counts = 0
number_counts = 0
with open(file_name, 'r') as f:
      for line in f:
            space_counts += len( line.split() )
            number_list = [x for x in line.split() if x.isdigit()]
            number_counts = len(number_list)

print "space_counts", space_counts
print "number_counts",number_counts

文本:

4 8 15 16 23 42     520 I LOVE LOST.
4 8 15 16 23 42     520 I LOVE YOU.

发现答案不对呀!求指教?

谢谢 @banagoo 的帮助,可运行的代码如下:

import os
os.chdir('/Users/apple/Desktop/Python/chapter')
file_name = "lost.txt"

space_counts = 0
number_counts = 0
number_list = []

with open(file_name, 'r') as f:
    for line in f:
        line = line.strip()
        space_split_list = line.split(' ')
        space_counts += len(space_split_list) - 1
        for word in space_split_list:
                if word.isdigit():
                    number_list.append(word)
        number_counts = len(number_list)

print "space_counts", space_counts
print "number_counts", number_counts
怪我咯
怪我咯

走同样的路,发现不同的人生

모든 응답(2)
大家讲道理
input_str = '4 8 15 16 23 42     520 I LOVE LOST.'
space_split_list = input_str.split(' ')
space_counts = len(space_split_list) - 1
number_list = [x for x in space_split_list if x.isdigit()]
number_counts = len(number_list)

import os
os.chdir('/Users/apple/Desktop/Python/chapter')
file_name = "lost.txt"
space_counts = 0
number_counts = 0
with open(file_name, 'r') as f:
    for line in f:
        line = line.strip()  # 每行行首,行尾的空格会被忽略
        space_split_list = line.split(' ')
        space_counts += len(space_split_list) - 1
        number_list = [x for x in space_split_list if x.isdigit()]
        number_counts = len(number_list)

print "space_counts", space_counts
print "number_counts", number_counts
刘奇

可以尝试用正则表达式。

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!