Python每日一练——第7天:基础9题

本文介绍了Python编程中的基础字符串操作,包括单词造句、查找重复字符串、判断幸运数字、实现九九乘法表、检测素数、清理污染字符串、输出程序员节问候、破解密码游戏以及统计字母频率。通过这些实例展示了Python在解决实际问题中的应用。
摘要由CSDN通过智能技术生成

1. 单词造句

描述:牛可乐学习了很多单词,但是他并不会灵活运用,只会将单词简单的连接成句子。请你模仿牛可乐连接单词的过程,将读入的字符串记录在列表中,先输出列表看看学习了哪些单词,然后拼接成一个用空格间隔开的句子并输出。

输入描述:输入多个字符串,只包含大小写英文字母,单词之间用逗号隔开。

输出描述

  • 第一行输出读入字符串的列表。
  • 第二行输出列表中字符串拼接而成的字符串。

代码实现

a = input("请输入你的句子:")
print(a.split(","))
print(" ".join(a.split(",")))

输出结果:
在这里插入图片描述

2. 重复出现的字符串

描述:字符串target是一个较长的字符串,请在字符串target中找出模式串patten出现的次数,并找到其出现的第一个位置。(子串不重叠统计,如果没有找到,位置为-1)

输入描述

  • 第一行输入target,第二行输入patten。
  • 所有字符串都只包含大小写字母。

输出描述

  • 第一行输出patten在target中出现的次数,为非负数。
  • 第二行输出patten在target中第一次出现的位置,没有则输出-1。(位置从下标0开始)

代码实现

target = input("请输入第一个字符串:")
patten = input("请输入第二个字符串:")
print("出现的次数为:", target.count(patten))
print("出现的位置为:", target.find(patten))

输出结果

在这里插入图片描述

3. 幸运数字大小

描述:牛牛、牛妹、牛可乐在一起讨论自己的幸运数字的大小。根据输入依次用列表记录三人的幸运数字,然后找出其中最小的幸运数字是多少?并输出列表排序后的结果。

输入描述:依次输入三个整数。

输出描述

  • 第一行输出三人中最小的幸运数字。
  • 第二行输出排序后的列表。

代码实现

a = int(input("请输入第一个数:"))
b = int(input("请输入第二个数:"))
c = int(input("请输入第三个数:"))
list1 = [a, b, c]
list2 = sorted(list1)
print("最小的幸运数字:", list2[0])
print("排序后列表:", list2)

输出结果
在这里插入图片描述

4. 九九乘法表

描述:牛牛正在背九九乘法表,他想将乘法表打印下来。现输入一个数n,请打印九九乘法表中的1~n行。(第一个乘数为行号,式子与式子之间按照空格间隔开)

输入描述:输入一个整数n,1 <= n <=9

输出描述:输出九九乘法表前n行。

代码实现

n = int(input("请输入一个数字:"))
for i in range(1, n + 1):
    for j in range(1, i + 1):
        print('{0}*{1}={2}'.format(i, j, i * j), end=' ')
    print()

输出结果

在这里插入图片描述

5. 判断素数

描述:素数即除了1和自身,没有别的因数。牛牛想知道一个数字n是否是素数,请用Python程序帮助他判断。

输入描述:输入一个正整数n,n>2

输出描述:如果是素数,则输出Yes,否则输出No。

代码实现

n = int(input("请输入要判断的数字:"))
f = 0
for i in range(2, n):
    if n % i == 0:
        f = f + 1
if f == 0:
    print('%s 是素数' % n)
else:
    print('%s 不是素数' % n)

运行结果

在这里插入图片描述

6. 拯救被污染的字符串

描述:牛牛有一份字符串my_str = 'I am$ N$iuniu$, an$d I $am stu$dying in $Now$coder!' 被污染了,其中出现了很多奇怪的 符号。现请你使用 s p l i t 函数将这份字符串从符号 符号。 现请你使用split函数将这份字符串从符号 符号。现请你使用split函数将这份字符串从符号处分割成众多字符列表,记录在my_list中,并使用print函数直接打印my_list中的结果。然后再使用join函数将my_list中的分段字符串重新连接成一个新的字符串,并使用print函数输出。

输入描述:无

输出描述

  • [‘I am’, ’ N’, ‘iuniu’, ‘, an’, 'd I ', ‘am stu’, 'dying in ', ‘Now’, ‘coder!’]
  • I am Niuniu, and I am studying in Nowcoder!

代码实现1

my_str = 'I am$ N$iuniu$, an$d I $am stu$dying in $Now$coder!'


def split(letter, my_str):
    newlist = []  # 建立空列表储存抽出来的有用字符
    j = 0  # 用来作为分片的开头
    for i in range(0, len(my_str)):  # 遍历每个字符编号 若为$则将该$之前的,上一个$之后的字符append到空列表
        if my_str[i] == letter:
            newlist.append(my_str[j:i])
            j = i + 1  # 若第i个字符为$,则下一个分片应从i+1开始
        elif i == len(my_str) - 1:  # 到字符末尾时如果没有$则需要单独列出
            newlist.append(my_str[j:i + 1])
        else:
            pass
    return newlist


newlist = split('$', my_str)
print(newlist)
print(''.join(newlist))

代码实现2

my_str = 'I am$ N$iuniu$, an$d I $am stu$dying in $Now$coder!'
my_list = my_str.split('$')
print(my_list)
print(''.join(my_list))

运行结果

在这里插入图片描述

7. 程序员节

描述:牛牛、牛妹和牛可乐都是Nowcoder的忠实用户,又到了一年一度的程序员节(10月24号),毫无疑问,他们都登录Nowcoder了,因为他们还没有刷完牛客题霸…
Nowcoder的管理员想对他们发送一些简单登录问候消息,并对他们表达了节日祝福。
请创建一个依次包含字符串 ‘Niuniu’ 、‘Niumei’ 和 ‘Niu Ke Le’ 的列表users_list,
请使用for循环遍历列表user_list,依次对列表users_list中的名字输出一行类似 ‘Hi, Niuniu! Welcome to Nowcoder!’ 的字符串,
for循环结束后,最后输出一行字符串 “Happy Programmers’ Day to everyone!”

输入描述:无

输出描述

  • 按题目描述进行输出即可。
  • Hi, Niuniu! Welcome to Nowcoder!
  • Hi, Niumei! Welcome to Nowcoder!
  • Hi, Niu Ke Le! Welcome to Nowcoder!
  • Happy Programmers’ Day to everyone!

代码实现

users_list = ['Niuniu', 'Niumei', 'Niu Ke Le']
for i in users_list:
    print("Hi, %s! Welcome to Nowcoder! " % i)
print("Happy Programmers' Day to everyone!")

运行结果

在这里插入图片描述

8. 密码游戏

描述:牛牛和牛妹一起玩密码游戏,牛牛作为发送方会发送一个4位数的整数给牛妹,牛妹接收后将对密码进行破解。
破解方案如下:每位数字都要加上3再除以9的余数代替该位数字,然后将第1位和第3位数字交换,第2位和第4位数字交换。
请输出牛妹破解后的密码。

输入描述:输入一个四位数的整数。

输出描述:输出破解后的密码,以四位数的形式。

代码实现

list1 = []
num = input("请输入一个四位数:")
for i in num:
    number = (int(i) + 3) % 9
    list1.append(number)
list1[0], list1[1], list1[2], list1[3] = list1[2], list1[3], list1[0], list1[1]
s = ''.join(map(str, list1))
print(s)

运行结果

在这里插入图片描述

9. 牛牛学字母

描述:牛牛正在学英语字母,他想知道字符串s中每个字母出现的次数,请根据每个字母在字符串中首次出现的次序依次打印每个字母及其出现的次数。

输入描述:输入一个字符串s,只包含大小写英文字母。

输出描述:输出每个字母及其出现的次数,用空格间隔,每个字母单独一行。

代码实现

str = input("请输入英文字母:")
dict = {}
for i in str:
    dict[i] = dict.get(i, 0) + 1
for key, value in dict.items():
    print('{0} {1}'.format(key, value))

运行结果

在这里插入图片描述


函数是一段封装了特定功能的代码块,可以重复调用。无论是编写程序还是解决问,函数都是非常重要的工具。了解并熟练使用函数对于精通Python基础篇来说十分重要。 在Python中,函数的定义以关键字"def"开头,后面是函数的名称和参数列表。参数列表用于接收调用函数时传递的参数。在函数体内部,通过缩进来组织函数代码,并使用return语句返回函数的结果。 函数的优势体现在以下几个方面: 1. 代码的重用性:可以将一段常用的代码封装成函数,以便在其他地方重复使用,提高了代码的可读性和可维护性。 2. 简化程序结构:函数可以将复杂的问分解为多个简单的小问,使程序结构更加清晰,易于理解和修改。 3. 提高代码的可测试性:函数是模块化的单元,可以独立测试和验证,减少了程序出错的可能性。 在编写函数时,要注意以下几点: 1. 函数名称要有意义,能够表达函数的功能。 2. 参数列表可以根据需要进行定义,可以有多个参数,也可以没有参数。 3. 函数的代码要尽量简洁、清晰,避免冗余和重复的部分。 4. 在函数内部,可以使用局部变量来保存中间结果,避免对全局变量的过多依赖。 总之,函数是编程中不可或缺的组成部分,掌握了函数的使用,就掌握了解决问的利器。在后续的学习中,我们将进一步学习函数的高级应用,如函数的递归调用、函数的参数传递等。通过不断的实践和练习,相信不久的将来,我们就能够精通Python基础篇。
评论 96
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

袁袁袁袁满

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值