Python作业_Python基础升级 第一课 道未


题目:
练习1:求从1到100的数字中所有能既能被3整除,又能被5整合的数字有哪些。
for i in range(1,101):#range函数生成一个数列,range(起始位,终止位,步长)
    if i%3==0 and i%5==0:#整除即余数为0
        print(i)


练习2:输入一个字符串返回满足以下条件的字符串
如果字符串长度大等于3,添加 'ing' 到字符串的末尾
如果字符串是以 'ing' 结尾的,就在末尾添加 'ly'
如果字符串长度小于3,返回原字符串
s=input('input an English word:')
if s.endswith('ing'):
    s=s+'ly'
    print(s)
elif len(s)>3:
    s=s+'ing'
    print(s)
else:
    print(s)


练习3:判断回文
输入一个数字,如果是回文数字,返回True,否则 返回False
提示:回文:62426是回文数字
a=input('type a number:')
b=str(a)
for i in range(round(len(b)/2)):
    if b[i]!=b[len(b)-i-1]:
        print('Flase')
        break
    else:
        print('True')
        break


练习4:输入一个字符串,返回满足以下条件字符串
找到字符串中的子串 'not' 和 'bad’
如果 'bad' 出现在 'not' 后面,就把 'not' ... 'bad' 之间包含的所有字符串替换成 'good'
s=input('input a string:')
if 'not' in s and 'bad' in s:
    if s.index('not')<s.index('bad'):
        sc=s.replace(s[s.index('not')+3:s.index('bad')],'good')
        print(sc)
    else:
        print('not isn\'t before bad')
else:
    print('not and bad didn\'t exist at the same time')


练习5:输入一个字符串,把字符串拆分成两个等分
如果字符串长度是偶数,前一半和后一半的长度是相同的
如果字符串长度是奇数,则多出的一个字符加到前一半,如:'abcde',前一半是'abc',后一半是'de'
s=input('input an English word:')
print(s[0:round(len(s)/2+0.1)],s[round(len(s)/2+0.1):len(s)])


练习6:输入一个字符串返回满足以下条件的字符串
找出与字符串的第一个字母相同的字母,把它们替换成 '*',除了第一个字母本身以外
例如: 输入'babble', 返回 'ba**le’
s=input('input an English word:')
for i in range(len(s)):
    if i>0 and s[i]==s[0]:
        sc=s[1:len(s)].replace(s[i],'*')
        s=s[0]+sc
print(s)


练习7:输入一个字符串,返回满足以下条件的字符串
由字符串的最前面两个字母和最后两个字母组成的字符串。
例如: 'spring' 返回 'spng', 'is' 返回 'is’
当输入的字符串长度小于2时,返回空字符串
s=input('input an English word:')
a=int(len(s))
if a<2:
    print('')
elif a>2:
    sh=s[0:2];sl=s[-2:];
    sc=sh+sl
    print(sc)
else:
    print(s)


练习8:落球计算
一球从100米高度自由落下,假设每次落地后反跳回原高度的一半;再落下,再弹起。请问第6次落地后会弹起多少米?
请分别使用for循环与while循环。并使用break与contiune流程控制关键字
l=100
i=0
while i<6:
    l=l*0.5
    i=i+1
while i==6:
    break
print('高度:',l,'次数:',i)


第一次作业:创建一个python文件,接收两个参数(均为数字)并找出两个数字间所有的素数(即只能被1和自己整除的数)

运行这个文件,并检查结果
a=input('参数1:')
b=input('参数2:')
if a==b or abs(int(a)-int(b))==1:
    print('no number between in them')
elif a<b:
    x=a;y=b
else:
    x=b;y=a
for i in range(int(x)+1,int(y)):
    if i>2 and i%2==0:
        continue
    elif i>3 and i%3==0:
        continue
    elif i>5 and i%5==0:
        continue
    else:
        print(i)
已邀请:

ClownFish

赞同来自:


练习8:落球计算,是代码缩进不对吗,这样写是不是有问题?

素数的题,是跟2,3,5对比。是吧。这样就不用从2开始一直遍历到自己了。也就是如果一个数大于2或3,或5。。那这个数如果不能被 2,3,5,整除,就是素数的思路。条件分支,可以再精简一点。

要回复问题请先登录注册

返回顶部