前言
Python语言简单易用,可读性强。在了解基础语法后,你就可以来尝试解决以下的题目。放心,本系列的文章都对新手非常友好。
一、输入一串字符,统计不同类型的字符个数
ans= input("字符") #输入
kg,sz,dx,xx,qt = 0,0,0,0,0
for i in range(len(ans)): #依次判断空格数字大写小写其它的个数
if ord(ans[i])==32: kg+=1
elif ord(ans[i])>=48 and ord(ans[i])<=57: sz+=1
elif ord(ans[i])>=65 and ord(ans[i])<=90: dx+=1
elif ord(ans[i])>=97 and ord(ans[i])<=122: xx+=1
else: qt+=1
print("空格{}个,数字{}个,大写{}个,小写{}个,其它{}个".format(kg,sz,dx,xx,qt)) #输出
二、输入两个整数,求出它们的最大公约数和最小公倍数
a=int(input("请输入一个整数"))#输入
b=int(input("请输入一个整数"))
if a<b: a,b=b,a #a较大
x,y=a,b
r=1
while r!=0: #辗转相除法
r=x%y
x=y
y=r
gcd=x #最大公约数
gdc=int(a*b/x) #最小公倍数
print("最大公约数{},最小公倍数{}".format(gcd,gdc)) #输出
三、画出正态分布随机数的柱状图
import random #导入库
import math
import matplotlib.pyplot as plt
num = list(range(100000))
for i in range (100):
num[i] = round(random.normalvariate(0, 1)) #正态分布的随机数
if num[i]<-9.5: num[i]=-9
if num[i]>9.5: num[i]=9
X=[-9,-8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9]
Y=[num.count(-9),num.count(-8),num.count(-7),num.count(-6),num.count(-5),num.count(-4),num.count(-3),num.count(-2),num.count(-1),num.count(0),num.count(1),num.count(2),num.count(3),num.count(4),num.count(5),num.count(6),num.count(7),num.count(8),num.count(9)]
plt.bar(X,Y) #绘制柱状图
plt.xticks(ticks=(-9.5,-8.5,-7.5,-6.5,-5.5,-4.5,-3.5,-2.5,-1.5,0.5,0,0.5,1.5,2.5,3.5,4.5,5.5,6.5,7.5,8.5,9.5)) #设置x轴刻度
plt.show()
四、输出程序本身
a = list(range(6))
a[0] = 'a = list(range(6))'
a[1] = 'print(a[0])'
a[2] = 'for i in range(6):'
a[3] = 'print("a["+str(i)+"] = "+chr(39)+a[i]+chr(39))'
a[4] = 'for i in range(1,5): print(a[i])'
a[5] = 'print(a[5], end = "")'
print(a[0])
for i in range(6):
print("a["+str(i)+"] = "+chr(39)+a[i]+chr(39))
for i in range(1,5): print(a[i])
print(a[5], end = "")
总结
以上就是本文全部内容,你学会了吗?