1.文本字符分布
分析附件 data.txt 文件的字符分布,即每个字符对应的数量。 按照 字符:数量 显示,每行一个结果,如果没有出现该字节则不显示输出,字符采用 Unicode 编码升序排列。
示例1:
输入:无
输出:"a: 1
b: 2
c: 3
"
注意:
示例1 是一个输入输出示范样例,不是正确结果;
字符:数量,其中,字符表示为可打印字符,按照升序。
#文本字符分布
txt=open("data.txt").read()
counts={}
for zimu in txt:
counts[zimu] = counts.get(zimu,0)+1
ls = list (counts.items())
ls.sort()
for k ,c in ls:
print("{}:{}".format(k,c))
data文件下载的地址:data.txt
十二星座
古代航海人为了方便在航海时辨别方位和观测天象,将散布在天上的星星运用想象力将它们连接起来,有一半是在古时候已命名,另一半是近代开始命名的。两千多年前古希腊的天文学家希巴克斯命名十二星座,依次为白羊座、金牛座、双子座、巨蟹座、狮子座、处女座、天秤座、天蝎座、射手座、魔蝎座、水瓶座和双鱼座。给出二维数据存储 CSV 文件(SunSign.csv),内容如下:
星座, 开始月日, 结束月日,Unicode
水瓶座, 120 , 218 , 9810双鱼座, 219 , 320 , 9811
白羊座, 321 , 419 , 9800
金牛座, 420 , 520 , 9801
双子座, 521 , 621 , 9802
巨蟹座, 622 , 722 , 9803
狮子座, 723 , 822 , 9804
处女座, 823 , 922 , 9805
天秤座, 923 , 1023 , 9806
天蝎座, 1024 , 1122 , 9807
射手座, 1123 , 1221 , 9808
魔蝎座, 1222 , 119 , 9809
请编写程序,读入 CSV 文件中数据,循环获得用户输入,直至用户输入 “exit” 退出。根据用户输入的星座名称,输出此星座的出生日期范围及对应字符形式。如果输入的星座名称有误,请输出“输入星座名称有误!”。
示例1:
输入:"
白羊座
金牛座
双子座
exit "
输出:"
♈座的生日位于 321-419 之间
♉座的生日位于 420- 520 之间
♊座的生日位于 521-621 之间 "
示例2:
输入:"
天猫座
exit "
输出:"
输入星座名称有误!"
注意:
输入使用 input(),不要增加额外的提示信息;
从附件中读取 utf-8 编码文本数据。
附件 1: SunSign.csv
平均代码量
18 行
#十二星座
stars=open("SunSign.csv","r",encoding='utf-8')
ls=[]
for line in stars:
line = line. replace("\n","")
ls. append(line.split(","))
stars.close()
while True:
InputXingzuo = input()
InputXingzuo.strip()
flag =False
if InputXingzuo == 'exit':
break
for line in ls:
if InputXingzuo == line [0]:
print("{}座的生日位于{}-{}之间".format(chr(eval(line[3])),line[1],line[2]))
flag = True
if flag ==False:
print("输入星座名称有误!")