码迷,mamicode.com
首页 > 编程语言 > 详细

python-file练习题

时间:2020-03-28 18:04:15      阅读:168      评论:0      收藏:0      [点我收藏+]

标签:为什么   ascii   lines   readline   多少   std   编码   use   count   


"""
12、请说明python2 python3中的默认编码是什么?

答:python2重视 ASCIIpython3中默认编码方式是UTF-8
"""

"""
13、为什么会出现中文乱码?你能列举出现乱码的情况有哪几种?
答:出现乱码就是由于编码的方式不一致导致的。
1mac上编码方式为utf-8windows编码方式为gbk,同一个文件放在两个不同的平台显示的内容不一样的
"""

"""
14、分别写出在windowsmac上用py2输出中文怎么做?
print(u‘中文‘)
文件开头 -*-conding:utf-8-*-
"""

"""
15、任一个英文的纯文本文件,统计其中的每个单词出现的个数,注意是每个单词。。
"""
# file_path = r‘C:\Users\\练习题\english_text‘
# a_z_list = [chr(i) for i in range(ord(‘a‘),ord(‘z‘)+1)]
# A_Z_list = [chr(i) for i in range(ord(‘A‘),ord(‘Z‘)+1)]
# zimu_set = set(a_z_list)|set(A_Z_list) # 大小写字母的集合
#
# f = open(file_path,‘r‘,encoding=‘utf-8‘)
# text = f.read() # 文本的内容读取出来,放在一个变量里(此时 存到了内存)
# f.close()
# count_set = set(text) & zimu_set # 统计文章出现的字母,取文章出现的字符和大小写字母集合的交集
# print(‘文章出现的字母为 :{}‘.format(count_set))
# print(‘文章未统计其他字符为:{}‘.format(set(text) - zimu_set))
# print(‘文章中未出现的字母为:{}‘.format(zimu_set - set(text)))
# for i in count_set:
# print(r‘{}出现了{}‘.format(i,text.count(i)))


"""
16、有个目录,里面是你自己写过的程序,统计一下你写过多少行代码。包括空行和注释,但是要分别列出来。
"""

import os


def query_my_program_files(dirname):
"""
根据目录查询目录下所有的.py文件的代码行数(包含空行和注释)
:param dirname:传入目录的绝对路径
:return: 字典key:文件名,value:代码行数(包含空行和注释)
"""
file_list = os.listdir(dirname)
print(file_list)
my_program_file = []
for i in file_list:
if os.path.isfile(i) and i.endswith(‘.py‘) and i != ‘__init__.py‘: # 是否是文件,是否是.py结尾,是否不是‘__init__.py’
my_program_file.append(i)
print(my_program_file)

# line_count = 0 # 记录行数不能放在外面,不然会累加。放在每次打开文件声明一个这样新打开一个就会清零
dict_file_lines = {}
for i in my_program_file:
my_program_file_path = os.path.join(dirname, i)
with open(my_program_file_path, ‘r‘, encoding=‘utf-8‘) as f:
line_count = 0 # 记录行数
while True:
if f.readline():
line_count += 1
dict_file_lines[i] = line_count
else:
break
# print (
# """
# ---------------
# {}】程序写了 {} 行代码
# ---------------
# """.format(i, line_count)
# )
return dict_file_lines


print(query_my_program_files(r‘xxx练习题‘))

python-file练习题

标签:为什么   ascii   lines   readline   多少   std   编码   use   count   

原文地址:https://www.cnblogs.com/shanshan-test/p/12588196.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!