菜鸟例题

# 题目:输出一个随机数。

# 程序分析:使用 random 模块。

import random

# 随机数

print(random.uniform(10,20))

# 随机整数

print(random.randint(10,20))

# 1-99间的随机数

print(random.choice([x for x in range(1,100)]))

# 将摄氏温度转华氏温度

celsius = float(input(“输入摄氏温度:”))

farenheit = (celsius *1.8) +32

print("%0.1f 摄氏温度转为华氏温度为 %0.1f "%(celsius,farenheit))

用户输入两个变量,并相互交换

x=input(“输入x值:”)

y=input(“输入y值:”)

temp=x

x=y

y=temp

print(“交换后x的值为:{}”.format(x))

print(“交换后y的值为:{}”.format(y))

创建自定义函数 is_number() 方法来判断字符串是否为数字

def is_number(s):

try:

float(s)

return True

except ValueError:

pass

try:

import unicodedata

unicodedata.numeric(s)

return True

except (TypeError,ValueError):

pass

return False

print(is_number(“foo”))

print(is_number(“1”))

print(is_number(“1.3”))

print(is_number("-1.37"))

print(is_number(“1e3”))

print(is_number(“四”))

30 个人在一条船上,超载,需要 15 人下船。

于是人们排成一队,排队的位置即为他们的编号。

报数,从 1 开始,数到 9 的人下船。

如此循环,直到船上仅剩 15 人为止,问都有哪些编号的人下船了呢?

people = {}

for x in range(1,31):

people[x] = 1

check = 0

i = 1

j = 0

while i <= 31:

if i == 31:

i = 1

elif j == 15:

break

else:

if people[i] == 0:

i += 1

continue

else:

check += 1

if check == 9:

people[i] = 0

check = 0

print("{}号下船了".format(i))

j += 1

else:

i += 1

continue

导入 datetime 模块来获取昨天的日期

import datetime

def getYesterday():

today = datetime.date.today()

print(today)

oneday =datetime.timedelta(days=1)

yesterday=today-oneday

return yesterday

print(getYesterday())

计算每个月的天数

import calendar

monthRange = calendar.monthrange(2019,1)

print(monthRange)

输出的第一个元素是所查月份第一天是星期几,第二个时月份对应的天数

字符串的判断

str = “runoob.com

# 数字或者字母

print(str.isalnum())

# 字母

print(str.isalpha())

# 数字

print(str.isdigit())

# 小写

print(str.islower())

# 首字母大写

print(str.istitle())

# 所有字符都是空白字符

print(str.isspace())

# 使用递归的方式来生成斐波那契数列

def recur_fibo(n):

if n<=1:

return n

else:

return(recur_fibo(n-1)+recur_fibo(n-2))

nterms = int(input(“你要输出几项:”))

if nterms<=0:

print(“输入正数”)

else:

print(“斐波那契数列:”)

for i in range(nterms):

print(recur_fibo(i))

生成指定日期的日历

import calendar

yy = int(input(“输入年份:”))

mm = int(input(“输入月份:”))

print(calendar.month(yy,mm))

def add(x, y):

return x+y

def subtract(x,y):

return x-y

def multiply(x,y):

return x*y

def divide(x,y):

return x/y

choice = input(“输入你的选择:\n1.加 2.减 3.乘 4.除”)

num1=int(input(“输入第一个数字:”))

num2=int(input(“输入第二个数字:”))

if choice == “1”:

print(num1,"+",num2,"=",add(num1,num2))

if choice == “2”:

print(num1,"-",num2,"=",subtract(num1,num2))

if choice == “3”:

print(num1,"*",num2,"=",multiply(num1,num2))

if choice == “4”:

print(num1,"/",num2,"=",divide(num1,num2))

最小公倍数

def lcm(x,y):

if x > y:

greater = x

else:

greater = y

while(True):

if((greater % x == 0) and (greater % y == 0)):

lcm = greater

break

greater += 1

return lcm

num1 = int(input(“输入第一个数字:”))

num2 = int(input(“输入的第二个数字:”))

print(num1,“和”,num2,“的最小公倍数为”,lcm(num1,num2))

最大公约数

def hcf(x,y):

if x > y:

smaller = y

else:

smaller = x

for i in range(1,smaller+1):

if((x % i == 0) and(y % i == 0)):

hcf = i

return hcf

num1 = int(input(“输入的第一个数字:”))

num2= int(input(“输入的第二个数字:”))

print(num1,“和”,num2,“的最大公约数为”,hcf(num1,num2))

如果一个n位正整数等于其各位数字的n次方之和,则称该数为阿姆斯特朗数。 例如1^3 + 5^3 + 3^3 = 153。

1000以内的阿姆斯特朗数: 1, 2, 3, 4, 5, 6, 7, 8, 9, 153, 370, 371, 407。

以下代码用于检测用户输入的数字是否为阿姆斯特朗数

num = int(input(“请输入一个数字:”))

sum = 0

n = len(str(num))

temp = num

while temp > 0:

digit = temp % 10

sum +=digit ** n

temp //= 10

if num == sum:

print(num,“是阿姆斯特朗数”)

else:

print(num, “不是阿姆斯特朗数”)

整数的阶乘(

num = int(input(“请输入一个数字:”))

factorial = 1

if num < 0:

print(“抱歉,负数没有阶乘”)

elif num ==0:

print(“0的阶乘为1”)

else:

for i in range(1,num+1):

factorial=factorial*i

print("%d 的阶乘为 %d" %(num,factorial))

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值