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))
运行结果: