Python基础入门升级班 前2次课程的作业讨论帖


本帖是Python基础入门升级版班级的作业、课程内容讨论区,欢迎大家帖自己做作业时好的解法,自己复习时遇到的问题,以便大家讨论学习
已邀请:

第一次作业
1、

求从1到100的数字中所有能被3整除和5整除的数字的有哪些

for i in range(1,101):
if i%3==0 and i%5==0:
print(i)

2、

输入一个字符串返回满足以下条件的字符串

•如果字符串长度大等于3,添加 'ing' 到字符串的末尾

•如果字符串是以 'ing' 结尾的,就在末尾添加 'ly'

•如果字符串长度小于3,返回原字符串

s = input()
if len(s) >= 3:
if(s.endswith('ing')):
s+='ly'
else:
s+='ing'
else:
pass

print(s)

3、

判断是否为回文

•提示:回文:62426是回文数字a[::-1] 可用字符串翻转

i=0
s = input()
length = len(s)
print(length)
b=True
while(i <= length//2):
if s[i]==s[length-i-1]:
i+=1
else:
b=False
break
if b==True:
print('yes')
else:
print('no')

4、

输入一个字符串,返回满足以下条件字符串

•找到字符串中的子串 'not' 和 'bad’

•如果 'bad' 出现在 'not' 后面,就把 'not' ... 'bad' 之间包含的所有字符串替换成 'good'

s = input()
start = s.find('bad')
end = s.find('not')
if(start > end):
s = s.replace(s[end+len('not'):start],'good')
else:
pass
print(s)

5、

输入一个字符串,把字符串拆分成两个等分

•如果字符串长度是偶数,前一半和后一半的长度是相同的

•如果字符串长度是奇数,则多出的一个字符加到前一半,如:'abcde',前一半是'abc',后一半是'de'

s = input()
if len(s)%2==0:
s1 = s[0:len(s)//2]
s2 = s[len(s)//2:]
else:
s1 = s[0:len(s)//2+1]
s2 = s[len(s)//2+1:]
print(s1)
print(s2)

6、

输入一个字符串返回满足以下条件的字符串

•找出与字符串的第一个字母相同的字母,把它们替换成 '*',除了第一个字母本身以外

•例如: 输入'babble', 返回 'ba**le'

s = input()
firstletter = s[0]
s = s.replace(s[0],'*')
s = firstletter + s[1:]
print(s)

7、

输入一个字符串 返回满足以下条件的字符串

•由字符串的最前面两个字母和最后两个字母组成的字符串。

•例如: 'spring' 返回 'spng', 'is' 返回 'is’

•当输入的字符串长度小于2时,返回空字符串

s = input()
if len(s) < 2:
print("null")
else:
s1 = s[0:2]
s2 = s[len(s)-2:len(s)]
print(s1+s2)

8、

输入字符串 a 和 b,返回添加以下条件的字符串

•交换两个字符串的最前面的两个字母

•使用空格把两个字符串分隔后合并成一个字符串

•字符串 a 和 b 的长度都大等于2

a = input()
b = input()
if len(a)>=2 and len(b)>=2:
first_a = a[0:2]
first_b = b[0:2]
a = first_b + a[2:]
b = first_a + b[2:]
end = a + " " + b
print(end)
else:
print("字符串长度小于2")

9、

落球计算

•一球从100米高度自由落下,假设每次落地后反跳回原高度的一半;再落下,再弹起。请问第6次落地后会弹起多少米?

•使用for与while循环完成

height = 100
for i in range(1,7):
while height!=0:
height = height / 2

break
print(height)

height=100
i=0
while True:
height = height * 0.5
i+=1
if(i < 6):
continue
else:
print(height)
break

10、

•求两个数字之间的素数

•素数:只能被1及自己整除的数,如3,7,13,23等

start = int(input())
end = int(input())
if(start==1):
print(start,' 不是素数')
start = start+1
else:
pass
temp = start
while temp<=end:
b = True
for i in range(2,temp//2):
if(temp % i==0):
b = False
break
else:
pass
if b==True:
print(temp,' 是素数')
else:
print(temp,' 不是素数')
temp+=1

要回复问题请先登录注册

返回顶部