鱼C论坛

 找回密码
 立即注册
楼主: zltzlt

[已解决]Python:每日一题 341

[复制链接]
发表于 2020-3-5 16:23:05 | 显示全部楼层
  1. def f_341(string: str):
  2.     length = 1
  3.     #  子字符串只能从第一个字母开始,从第一个字母一次增加子字符串的长度,知道长度是母字符串的一半
  4.     while length <= len(string) // 2:
  5.         index = 0
  6.         while index < len(string) - length:
  7.             if len(string) % length != 0:
  8.                 break
  9.             else:
  10.                 if string[: length] == string[index+length: index+2*length]:  # 循环对比
  11.                     index += length
  12.                     continue
  13.                 else:
  14.                     break
  15.         else:
  16.             return True
  17.         length += 1

  18.     return False

  19. print(f_341('abcabc'))
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-14 22:42:12 | 显示全部楼层
  1. #给定一个非空的字符串,判断它是否可以由它的一个子串重复多次构成。

  2. def fun341():
  3.     a = input('请输入一个字符串:')
  4.     l = len(a)
  5.     if l == 1:
  6.         return False
  7.     for i in range(1,l//2+1):
  8.         if l % i == 0 and a[:i]*(l//i) == a:
  9.             return True
  10.     return False
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-6-1 17:13:07 | 显示全部楼层
  1. def fun341(x):
  2.     if len(x) == 1:
  3.         return True
  4.     for i in range(1,len(x)//2+1):
  5.         if len(x)%len(x[:i]):
  6.             continue
  7.         if x[:i]*(len(x)//i) == x:
  8.             return True
  9.     return False
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-12-31 09:09

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表