Python作业_Python基础升级 第一课 kerry


题目:求从1到100的数字中所有能既能被3整除,又能被5整合的数字有哪些.
for i in range(1,101):
    if (i%3==0) and (i%5==0):
        print(i)


题目:输入一个字符串返回满足以下条件的字符串
如果字符串长度大等于3,添加 'ing' 到字符串的末尾
如果字符串是以 'ing' 结尾的,就在末尾添加 'ly'
如果字符串长度小于3,返回原字符串.
a = input("input:")
if len(a)>=3:
        a=a+'ing'
        print(a)
elif a[-3:]=='ing':

elif a.endswith('ing'):

        a=a+'ly'
        print(a)
elif len(a)<3:
        print(a)


题目:判断回文
输入一个数字,如果是回文数字,返回True,否则 返回False
提示:回文:62426是回文数字
a=input('输入一个数字:')
print ('true' if a==a[::-1] else 'false')

或者

def is_palindrome(n):  
    return str(n)==str(n)[::-1]  
  
output = filter(is_palindrome, range(1, 1000))  
print(list(output))  


题目:输入一个字符串,返回满足以下条件字符串
找到字符串中的子串 'not' 和 'bad’
如果 'bad' 出现在 'not' 后面,就把 'not' ... 'bad' 之间包含的所有字符串替换成 'good'
a=input('请输入一个字符串:')
if a.find('bad')>a.find('not'):
    b=a[0:a.find('not')]+'good '+a[a.find('bad'):]
    print (b)


题目:输入一个字符串,把字符串拆分成两个等分
如果字符串长度是偶数,前一半和后一半的长度是相同的
如果字符串长度是奇数,则多出的一个字符加到前一半,如:'abcde',前一半是'abc',后一半是'de'
a=input('请输入一个字符串:')
if len(a)%2==0:
    print(a[0:int(len(a)/2)],a[int(len(a)/2):])
else:
    print(a[0:int(len(a)/2)+1],a[int(len(a)/2)+1:])


题目:输入一个字符串返回满足以下条件的字符串
找出与字符串的第一个字母相同的字母,把它们替换成 '',除了第一个字母本身以外
例如: 输入'babble', 返回 'ba*le’
a=input('请输入一个字符串:')
first=a[0]
b=a.replace(first,'*')
b=first+b[1:]
print (b)


题目:输入一个字符串,返回满足以下条件的字符串
由字符串的最前面两个字母和最后两个字母组成的字符串
例如: 'spring' 返回 'spng', 'is' 返回 'is’
当输入的字符串长度小于2时,返回空字符串
a=input('请输入一个字符串:')
if len(a)>2:
    a=a[0:2]+a[-2:]
    print(a)
else:
    print(a)


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

a=100
for b in range(1,8):
    a*=0.5
    if b<=5:
        continue
    else:
        pass
    print('高度:',a,'次数:',b)


题目:创建一个python文件,接收两个参数(均为数字)并找出两个数字间所有的素数(即只能被1和自己整除的数)运行这个文件,并检查结果
def zhishu(n): 
  if n <= 1: 
    return False  #1不为质数
  i = 2 
  while i*i <= n:  #平方根写成次方
    if n % i == 0: #看下能否被整除,能整除直接跳出,不能整除+1继续试验
      return False 
    i += 1 
  return True

output=filter(zhishu,range(2,300))
print(list(output))

or

a = 2 #起始
b = 300 #结束

E = []
for num in range(a,b+1):
   for i in range(2,int(num*0.5+1)): 
      if num%i == 0:
         break 
   else: 
      E.append(num)
print (a,'到',b,'的质数有',E)
print (a,'到',b,'有',len(E),'个质数' )
已邀请:

ClownFish

赞同来自:


最后一用上列表了。把所有的素数都收集起来了。棒~

要回复问题请先登录注册

返回顶部