Python【每日一问】30

问:

【基础题】:一个足球队在寻找年龄在10岁到12岁的小女孩(包括10岁和12岁)加入。编写一个程序,询问用户的性别(m表示男性,f表示女性)和年龄,然后显示一条消息指出这个人是否可以加入球队,询问10次后,输出满足条件的总人数。

【提高题】:键盘输入正整数n,按要求把n输出到屏幕,格式要求:宽度为20个字符,减号字符-填充,右对齐,带千分位分隔符。如果输入正整数超过20位,则按照真实长度输出。例如:键盘输入正整数n为1234,屏幕输出 ----------------1234
PS:提高题要求:先实现功能,再实现功能的前提下,以两行代码实现

答:

【基础题】:一个足球队在寻找年龄在10岁到12岁的小女孩(包括10岁和12岁)加入。编写一个程序,询问用户的性别(m表示男性,f表示女性)和年龄,然后显示一条消息指出这个人是否可以加入球队,询问10次后,输出满足条件的总人数。

方法1:

n = 0
for _ in range(10):
    age=input("请输入你的年龄:")
    gender=input("请输入你的性别:(男性输入m 女性输入f)")
    if 10<=eval(age)<=12 and gender=="f":
        print("恭喜你被录取!")
        n+=1
    else:
        print("抱歉,你没有被录取。")
print("共有{}人被录取!".format(n))

 

方法2:

def selectPlayer():
    containt = []
    for i in range(10):
        name = input('输入姓名:')
        age = input('输入一下年龄:')
        genders = input('输入一下性别m表示男性,f表示女性')
        print(type(genders))
​
        if 10 <= age <= 12 :
            if genders == 'm':
                containt.append(name)
​
    print("his name :",containt,"number:",len(containt))
​
​
if __name__ =="__main__":
    selectPlayer()

 

方法3:

def chose(ask_people=10):
    number = 0
    count = 0
    while True:
        if number == ask_people: break
        gender = input("please input your gender(f:female,m:man)\n")
        gender = gender.strip(' ')
        if gender not in ['f', 'm']:
            print("your gender is illegal\n")
            continue
        age = input("please input your age:(1,120)\n")
        age = int(age.strip(' '))
        if age <= 0 or age >= 120:
            print("your age is illegal\n")
            continue
​
        number += 1
        if (gender == 'f') and (10 <= age <= 12):
            count += 1
            print("Congratulation,you can jion in us\n")
        else:
            print("Sorry,we need female and that her age is (10,12)\n")
    print(f"{count}\n")
​
​
if __name__ == '__main__':
    chose()

 

方法4:

def soccer_team():
    """
    一个足球队在寻找年龄在10岁到12岁的小女孩(包括10岁和12岁)加入。
    编写一个程序,询问用户的性别(m表示男性,f表示女性)和年龄,
    然后显示一条消息指出这个人是否可以加入球队,询问10次后,输出满足条件的总人数。
    """
​
    count = 1  # 记录询问次数
    sum = 0  # 统计符合总人数
for item in range(1, 11):
        print('第%d次询问' % count)
        sex = input('请输入性别(m表示男性,f表示女性):')
        age = int(input('请输入你的年龄:'))
        if sex == 'm' or 10 > age > 12:
            print('抱歉,你不符合我们的条件,我们需要10岁到12岁的女孩')
        elif sex == 'f' and age > 12 or age < 10:
            print('你的年龄不符合我们的要求哦')
        elif sex == 'f' and 10 <= age <= 12:
            print('恭喜你加入我们的足球队!')
            sum += 1
        print("\n")
        count += 1
    print('询问10个人后,目前我们一共有%d人加入' % sum)
​
​
soccer_team()

 

 

【提高题】:键盘输入正整数n,按要求把n输出到屏幕,格式要求:宽度为20个字符,减号字符-填充,右对齐,带千分位分隔符。如果输入正整数超过20位,则按照真实长度输出。例如:键盘输入正整数n为1234,屏幕输出 ----------------1234 PS:提高题要求:先实现功能,在实现功能的前提下,再以两行代码实现

方法1:

n = input('Enter:')
print('{:->20n}'.format(n))

 

方法2:

num = input("请输入一个正整数:")
print("{:->20,}".format(eval(num)))

 

方法3:

if __name__ == '__main__':
    string = input("please input numbers:\n")
    print('{:->20}'.format(string))

 

转载于:https://www.cnblogs.com/ElegantSmile/p/10911220.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值