阿里云课程——python课后练习

#2019/7/22
# 练习 创建一个变量保存你的名字,然后通过四种格式化字符串的方式
#   在命令行中显示,欢迎 xxx 光临!

#练习:
#方法一:
name = 'gc'
print('欢迎'+name+'光临!')#√这种不能传int数字进去
print("欢迎"+name+"光临!")#√(与上面的不同之处仅在双引号依旧可以用)
#方法二:
name = 'gc'
print('欢迎',name,'光临!')#欢迎 gc 光临(结果中会带有空格)(这种可以传数字)
#方法三:
name = 'gc'
print('欢迎%s光临!'%name)#√

print('欢迎%s光临!'%'gc')#√
#方法四:
print(f'欢迎{name}光临!')#√
#2019/7/23
#练习1:
#    编写一个程序,获取一个用户输入的整数。然后通过程序显示这个数是奇数还是偶数。
num = int(input('请输入一个整数:'))
if num%2 == 0 :
    print('你输入的数',num,'为偶数')
else :
    print('你输入的数',num,'为奇数')
#注意的点:
#① 输入的都为字符串,要记得转型
#② print()语句刚开始写成print('你输入的数'+num+'为偶数')是错误的,
#因为:can only concatenate str (not "int") to str

# 练习2:
#    编写一个程序,检查任意一个年份是否是闰年。
#    如果一个年份可以被4整除不能被100整除,或者可以被400整除,这个年份就是闰年
year = int(input('请输入任意一个年份:'))
if (year%4 == 0 and year%4 != 0) or year%400 == 0 :
    print('%d是闰年'%year)
else:
    print('%d不是闰年'%year) 
#注意的点:
#① 缩进缩进缩进
#② print语句%year前面不要加逗号(用占位符则无需逗号)

# 练习3:
#    我家的狗5岁了,5岁的狗相当于多大年龄的人呢?
#    其实非常简单,狗的前两年每一年相当于人类的10.5岁,然后每增加一年就增加四岁。
#    那么5岁的狗相等于人类的年龄就应该是10.5+10.5+4+4+4 = 33岁
#    编写一个程序,获取用户输入的狗的年龄,然后通过程序显示其相当于人类的年龄。
#    如果用户输入负数,请显示一个提示信息
age = float(input('请输入狗狗的年龄:'))
if age<0 :
    print('请输入正确的年龄!')
elif age<=2 and age>=0 :
    age = age*10.5
    print('你家狗狗相当于人类年龄%s岁'%age)
else :
    age = 10.5*2+(age-2)*4
    print('你家狗狗相当于人类年龄%s岁'%age)

# 练习4:
#   从键盘输入小明的期末成绩:
#   当成绩为100时,'奖励一辆BMW'
#   当成绩为[80-99]时,'奖励一台iphone'
#   当成绩为[60-79]时,'奖励一本参考书'
#   其他时,什么奖励也没有
grade = float(input('请输入小明的期末成绩:'))
if grade == 100 :
    print('奖励一辆BMW')
elif 80<=grade<=99 :
    print('奖励一台iphone')
elif 60<=grade<=79 :
    print('奖励一本参考书')
else :
    print('什么也没有')

#练习5:
#   大家都知道,男大当婚,女大当嫁。那么女方家长要嫁女儿,当然要提出一定的条件:
#   高:180cm以上; 富:1000万以上; 帅:500以上;
#   如果这三个条件同时满足,则:'我一定要嫁给他'
#   如果三个条件有为真的情况,则:'嫁吧,比上不足,比下有余。'
#   如果三个条件都不满足,则:'不嫁!'
high = float(input('请输入男方身高(cm):'))
money = float(input('请输入男方资产(万):'))
face = float(input('请输入男方帅气程度(分值):'))
if high>180 and money>1000 and face>500 :
    print('我一定要嫁给他')
elif high>180 or money>1000 or face>500 :
    print('嫁吧,比上不足,比下有余。')
else :
    print('不嫁!')

#练习6:
#    水仙花数是指一个 n 位数(n≥3 ),
#    它的每个位上的数字的 n 次幂之和等于它本身
#    (例如:1**3 + 5**3 + 3**3 = 153)。
#    求1000以内所有的水仙花数
i = 1
print('1000以内的所有水仙花数为:')
while i<1000 :
#判断是几位数
    bai = i//100
    shi = (i%100)//10
    ge = i%10
    if bai**3 + shi**3 + ge**3 == i :
        print(i)
    i = i+1
#注意的点
#python中的//可以直接算出除后的整数结果
2019/8/1
num = 8
print('我最喜欢的数字是:',num)#√
#print('我最喜欢的数字是:'+num) 
#an only concatenate str (not "int") to str 难道是因为+的用法仅仅是能用于 字符串(划重点)的拼接,不能拼接数字和字符串
print('我最喜欢的数字是:'+str(num))#√ 现在使用了字符串的拼接,因为我已经把int转化成了字符了

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值