python【字符串str(练习)】

回文数判断

示例 1:
输入: 121
输出: true
示例 2:
输入: -121
输出: false
解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因>此它不是一个回文数。
示例 3:
输入: 10
输出: false
解释: 从右向左读, 为 01 。因此它不是一个回文数。

“”"
num = input(‘Num:’)
if num == num[::-1]:
print(‘这是一个回文数’)
else:
print(‘这不是一个回文数’)
在这里插入图片描述

变量名是否合法:

1.变量名可以由字母,数字或者下划线组成
2.变量名只能以字母或者下划线开头
s = ‘hello@’

1.判断变量名的第一个元素是否为字母或者下划线 s[0]
2.如果第一个元素符合条件,判断除了第一个元素之外的其他元素s[1:]
#1.变量名的第一个字符是否为字母或下划线
#2.如果是,继续判断 --> 4
#3.如果不是,报错
#4.依次判断除了第一个字符之外的其他字符
#5.判断是否为字母数字或者下划线

while True:
    s = input('变量名:')
    if s == 'exit':
        print('欢迎下次使用')
        break
    if s[0].isalpha() or s[0] == '_':
        for i in s[1:]:
            if not(i.isalnum() or i == '_'):
                print('%s变量名不合法' %s)
                break
        else:
            print('%s变量名合法' %s)
    else:
        print('%s变量名不合法' %s)

给定一个字符串来代表一个学生的出勤纪录,这个纪录仅包含以下三个

字符:
‘A’ : Absent,缺勤
‘L’ : Late,迟到
‘P’ : Present,到场
如果一个学生的出勤纪录中不超过一个’A’(缺勤)并且不超过两个连续的’L’(迟到),
那么这个学生会被奖赏。
你需要根据这个学生的出勤纪录判断他是否会被奖赏。
示例 1:
输入: “PPALLP”
输出: True
示例 2:
输入: “PPALLL”
输出: False

s = input('输入考勤记录:')
if s.count('A') <= 1 and s.count('LLL') == 0:    ##统计A的次数和LLL的次数
    print('True')
else:
    print('False')

#print(s.count('A') <= 1 and s.count('LLL') == 0)

在这里插入图片描述

小米笔试题

(2017-小米-句子反转)
- 题目描述:
> 给定一个句子(只包含字母和空格), 将句子中的单词位置反转,>单词用空格分割, 单词之间只有一个空格,前>后没有空格。
比如: (1) “hello xiao mi”-> “mi xiao hello”
- 输入描述:
> 输入数据有多组,每组占一行,包含一个句子(句子长度小于1000个>字符)
- 输出描述:
> 对于每个测试示例,要求输出句子中单词反转后形成的句子

- 示例1:

```
- 输入
    hello xiao mi
- 输出
    mi xiao hello
"""
print(' '.join(input().split()[::-1]))

在这里插入图片描述

设计一个程序,帮助小学生练习10以内的加法

    详情:
            - 随机生成加法题目;
            - 学生查看题目并输入答案;
            - 判别学生答题是否正确?
            - 退出时, 统计学生答题总数,正确数量及正确率(保

留两位小数点);

import random

count = 0
right = 0

while True:
    a= random.randint(0,9)
    b= random.randint(0,9)
    print('%d + %d = ' %(a,b))
    question = input('请输入您的答案:(q退出)')
    result = a + b
    if question == str(result):
        print('回答正确')
        right += 1
        count += 1
    elif question == 'q':
        break
    else:
        print('回答错误')
        count += 1

percent = right / count
print('测试结束,共回答%d道题,正确个数为%d,正确率为%.2f%%' %(count,right,percent * 100))

在这里插入图片描述

#01-15作业

小学生算术能力测试系统:
设计一个程序,用来实现帮助小学生进行百以内的算术练习,它具有以
下功能:
提供10道加、减、乘或除四种基本算术运算的题目;
练习者根据显示的题目输入自己的答案,程序自动判断输入的答案是否
正确并显示出相应的信息。

import random

count = 0
right = 0

while True:
    a = random.randint(0, 9)
    # 作为除数
    b = random.randint(1, 9)
    op = ['+', '-', '*', '//']
    d = random.choice(op)
    print('%d %s %d = ' % (a, d, b))
    question = input('请输入您的答案: (q退出)')
    result1 = a + b
    result2 = a - b
    result3 = a * b
    result4 = a // b
    if question == str(result1):
        print('回答正确')
        right += 1
        count += 1
    elif question == str(result2):
        print('回答正确')
        right += 1
        count += 1
    elif question == str(result3):
        print('回答正确')
        right += 1
        count += 1
    elif question == str(result4):
        print('回答正确')
        right += 1
        count += 1
    elif question == 'q':
        break
    else:
        print('回答错误')
        count += 1

percent = right / count
print('测试结束,共回答%d道题,正确个数为%d,正确率为%.2f%%'
          % (count, right, percent * 100))

在这里插入图片描述
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值