"""
#五角数
def getpentagonalNumber(n):
c = int(n*(3*n-1)/2)
print(c,end=‘\t‘)
if n %10 ==0:
print()
for i in range(1,101):
getpentagonalNumber(i)
"""
"""
#求一个整数各个数字的和
def sumDigits(b):
h = 0
for i in range(len(b)):
h += int(b[i])
return (h)
b=input("请输入整数:")
sumDigits(b)
def sumDigits(n):
#str 将括号中的内容强制转换为字符串
"""
"""
#提醒用户输入三个整数,然后调用函数按升序显示三个数
def desplaySortedNumbers(num1,num2,num3):
print("输入3个数:",num1,num2,num3)
if num1>num2 >num3:
print("排序:",num3,num2,num1)
elif num2>num1 >num3:
print("排序:",num3,num1,num2)
elif num3>num1>num2:
print("排序:",num2,num1,num3)
elif num1>num3>num2:
print("排序:",num2,num3,num1)
elif num3>num2>num1:
print("排序:",num1,num2,num3)
elif num2>num3>num1:
print("排序:",num1,num3,num2)
desplaySortedNumbers(4,8,1)
"""
"""编写一个程序提示用户输入投资额和百分比格式的年利率,然后输出一份表格显示
年份从1到30年的未来值。
def futureInvestmentValue(bj,ll,years):
years = years+1
for i in range(1,years):
sy = bj+ bj*ll
print(i,sy)
bj=sy
futureInvestmentValue(10000,0.09,30)
"""
"""
#编写一个测试程序,打印“1”到“Z”的字符,每行打印10个
def getPentagonalNumber(n):
for i in range(ord("1"),ord("Z")+1):
if n%10 !=0:
print(chr(i),end=‘\t‘)#\t表示空四个字符,也称缩进,相当于按一下Tab键 \n表示换行,相当于按一下回车 \n\t表示换行加每行空四格
else:
print(chr(i))
for n in range(1,2):
getPentagonalNumber(n)
"""
"""
for i in range(ord("1"),ord("Z")+1):
if i%10 !=0:
print(chr(i),end=‘\t‘)#\t表示空四个字符,也称缩进,相当于按一下Tab键 \n表示换行,相当于按一下回车 \n\t表示换行加每行空四格
else:
print(chr(i))
"""
"""
#编写一个程序测试,显示从2010年到2020年每年的天数
def numberOfDaysInAYrea(year):
if year%4==0 and year%100 !=0 and year%400 == 0:
print(year,"366天")
else:
print(year,"365天")
for year in range(2010,2021):
numberOfDaysInAYrea(year)
"""
"""
#计算两点间距离
import math
def distance(x1,y1,x2,y2):
q=(x1-x2)**2
w=(y1-y2)**2
e=q+w
dis= math.sqrt(e)
print("两点间距离为:",dis)
distance(1,2,3,4)
"""
"""
8、如果一个素数可以写成2**(P-1)的形式,其中p是某个正整数,
那么这个数就被称作梅森素数。编写程序找出p<=31的梅森素数。
def meisen(p):
q=pow(2,p)-1
m=2
if p==2:
print(p,q)
for i in range(2,p):
m=m+1
if p%i==0:
break
if m == p:
print(p,q)
for p in range(1,32):
meisen(p)
"""
"""
#9、调用time.time()返回1970年1月1日0点开始的毫秒数。
import time
print(time.time())
"""
time.localtime(time.time())输出结果为
time.struct_time(tm_year=2019, tm_mon=8,
tm_mday=6, tm_hour=19, tm_min=21, tm_sec=46,
tm_wday=1, tm_yday=218, tm_isdst=0)
"""
time = time.localtime(time.time())
print("Cuurrent date and time is",time.tm_year,"年",
time.tm_mon,"月",time.tm_mday,"日",
time.tm_hour,":",time.tm_min,":",time.tm_sec)
"""
"""
import numpy as np
def dianshu():
res1 = np.random.choice([1,2,3,4,5,6])
print("您第一次抛出的点数为:",res1)
res2 = np.random.choice([1,2,3,4,5,6])
print("您第二次抛出的点数为:",res2)
res = res1 + res2
print("您抛出的两次点数之和为:",res)
return res
res = dianshu()
if res==2 or res==3 or res==12:
print("你输了!!!")
elif res==7 or res==11:
print("你赢了!!!")
else:
res3 = res
res = dianshu()
if res ==7 or res == res3:
print("你赢了!!!")
else:
print("请开始下一局!")
"""
"""
class Rectangle(object): #width、height的默认值1和2
def __init__(self,width=1,height=2): #类有一个名为 __init__() 的特殊方法(构造方法),该方法在类实例化时会自动调用
self.width=width
self.height=height
def getArea(self):
getarea=self.width*self.height
print("宽、长为:%s"%self.width+"、%s"%self.height)
print("面积为:%s"%getarea)
#self.getPerimeter() #可以继续执行getPerimeter这个函数
def getPerimeter(self):
getperimeter=(self.width+self.height)*2
print("周长为:%s"%getperimeter)
def main(): #构造一个测试函数
rectangle=Rectangle()
rectangle.getArea()
rectangle.getPerimeter()
rectangle=Rectangle(3,4)
rectangle.getArea()
rectangle.getPerimeter()
if __name__==‘__main__‘:
main()
"""
"""
class Account(object):
def __init__(self,id = 0,balance = 100,annualInterestRate = 0):
self.__id=int(id)
self.__balance=float(balance)
self.__annualInterestRate=float(annualInterestRate)
@property #访问器 可访问私有参数的值 #详情见访问器章节
def id(self):
return self.__id
@property
def balance(self):
return self.__balance
@property
def annulInterestRate(self):
return self.__annualInterestRate
@balance.setter #修改器 修改器搭配访问器可以进行修改参数的值 #详情见访问器章节
def balance(self,balance):
self.__balance=balance
@annulInterestRate.setter
def annulInterestRate(self,annulInterestRate):
self.__annulInterestRate=annulInterestRate
def withdraw(self,n):
self.__balance=self.__balance-n
def deposit(self,x):
self.__balance=self.__balance+x
print("金额为:%s"%self.__balance)
def getMonthlyInterestRate(self):
self.monthlyInterestRate = self.__annualInterestRate/12/100
print("月利率为:%s"%self.monthlyInterestRate)
def getMonthlyInterest(self):
monthlyInterest =self.__balance*self.monthlyInterestRate
print("月利息为:%s"%monthlyInterest)
def main():
account=Account() #不给参数的值,走参数的默认值
#print(account.__balance)
account.withdraw(2500)
account.deposit(3000)
account.getMonthlyInterestRate()
account.getMonthlyInterest()
account=Account(1122,20000,0.045) #给参数赋值
#print(account.__balance)
account.withdraw(2500)
account.deposit(3000)
account.getMonthlyInterestRate()
account.getMonthlyInterest()
account.balance = 30 #通过访问器和修改器,修改私有参数的值
account.withdraw(2500)
account.deposit(3000)
account.getMonthlyInterestRate()
account.getMonthlyInterest()
if __name__==‘__main__‘:
main()
"""
"""
class fan(object):
SLOW=1
MEDIUM=2
FAST=3
def __init__(self,speed,radius,color,on):
speed=[SLOW,MEDIUM,FAST]
self.__speed=int(speed)
self.__radius=float(radius)
self.__color=str(color)
self.__on=bool(on)
print()
"""
"""
class fan(object):
def __init__(self,speed=1,radius=5,color="blue",on=False):
self.__speed=int(speed)
self.__radius=float(radius)
self.__color=str(color)
self.__on=bool(on)
@property
def speed(self):
return self._speed
# 访问器 - getter方法
@property
def radius(self):
return self._radius
@property
def color(self):
return self._color
@property
def on(self):
return self._on
# 修改器 - setter方法
@speed.setter
def speed(self,speed):
self.__speed = speed
@radius.setter
def radius(self,radius):
self.__radius = radius
@color.setter
def color(self,color):
self.__color = color
@on.setter
def on(self,on):
self.__on = on
def shuchu(self):
print(self.__speed,self.__radius,self.__color,self.__on)
def main():
FAN = fan() #不给参数赋值,走默认值
FAN.shuchu()
FAN = fan(3,5,"blue",False) #给参数赋值
FAN.shuchu()
FAN.speed = 3 #通过使用访问器和修饰器,修改参数的值
FAN.radius = 10
FAN.color = "yellow"
FAN.on = True
FAN.shuchu()
FAN.speed = 2
FAN.radius = 5
FAN.color = "red"
FAN.on = False
FAN.shuchu()
if __name__ == ‘__main__‘:
main()
"""
"""
class Person(object):
def __init__(self, name, age):
self._name = name
self._age = age
# 访问器 - getter方法
@property
def name(self):
return self._name
# 访问器 - getter方法
@property
def age(self):
return self._age
# 修改器 - setter方法
@age.setter
def age(self, age):
self._age = age
def play(self):
if self._age <= 16:
print(‘%s正在玩飞行棋.‘ % self._name)
else:
print(‘%s正在玩斗地主.‘ % self._name)
def main():
person = Person(‘王大锤‘, 12)
person.play()
person.age = 22
person.play()
# person.name = ‘白元芳‘ # AttributeError: can‘t set attribute
if __name__ == ‘__main__‘:
main()
"""
"""
import math
from math import fabs
class RegularPolygon(object):
def __init__(self,n=3,side=1,x=0,y=0):
self.__n=int(n)
self.__side=float(side)
self.__x=float(x)
self.__y=float(y)
@property
def n(self):
return self.__n
# 访问器 - getter方法
@property
def side(self):
return self.__side
@property
def x(self):
return self.__x
@property
def y(self):
return self.__y
# 修改器 - setter方法
@n.setter
def n(self,speed):
self.__n= n
@side.setter
def side(self,side):
self.__side = side
@x.setter
def x(self,x):
self.__x = x
@y.setter
def y(self,y):
self.__y = y
def getPerimeter(self):
perimeter=self.__side*self.__n
print("周长为:%s"%perimeter)
def gerArea(self):
area=self.__n*self.__side*self.__side/(4*math.tan(math.pi/self.__n))
print("面积为:%s"%area)
def main():
re=RegularPolygon() #走默认参数
re.getPerimeter()
re.gerArea()
re=RegularPolygon(6,4) #给前两个参数赋值,后两个参数走默认值
re.getPerimeter()
re.gerArea()
re=RegularPolygon(10,4,5.6,7.8) #给四个参数赋值
re.getPerimeter()
re.gerArea()
print(re.n) #通过访问器,访问私有变量
print(re.side) #
print(re.x)
print(re.y)
if __name__=="__main__":
main()
"""
"""
微信好友性别及位置信息
#导入模块
from wxpy import Bot
‘‘‘Q
微信机器人登录有3种模式,
(1)极简模式:robot = Bot()
(2)终端模式:robot = Bot(console_qr=True)
(3)缓存模式(可保持登录状态):robot = Bot(cache_path=True)
‘‘‘
#初始化机器人,选择缓存模式(扫码)登录
robot = Bot(cache_path=True)
#获取好友信息
robot.chats()
#robot.mps()#获取微信公众号信息
#获取好友的统计信息
Friends = robot.friends()
print(Friends.stats_text())
import itchat
import matplotlib.pyplot as plt
from collections import Counter
itchat.auto_login(hotReload=True)
friends = itchat.get_friends(update=True)
sexs = list(map(lambda x: x[‘Sex‘], friends[1:]))
counts = list(map(lambda x: x[1], Counter(sexs).items()))
labels = [‘Male‘,‘FeMale‘, ‘Unknown‘]
colors = [‘red‘, ‘yellowgreen‘, ‘lightskyblue‘]
plt.figure(figsize=(8, 5), dpi=80)
plt.axes(aspect=1)
plt.pie(counts, # 性别统计结果
labels=labels, # 性别展示标签
colors=colors, # 饼图区域配色
labeldistance=1.1, # 标签距离圆点距离
autopct=‘%3.1f%%‘, # 饼图区域文本格式
shadow=False, # 饼图是否显示阴影
startangle=90, # 饼图起始角度
pctdistance=0.6 # 饼图区域文本距离圆点距离
)
plt.legend(loc=‘upper right‘,)
plt.title(‘%s的微信好友性别组成‘ % friends[0][‘NickName‘])
plt.show()
"""