Python 编程题 第七节:没出现过的数字、替换空格、快乐数、立方根、最长公共前缀

没出现过的数字

python 复制代码
import random
n=int(input(""))
nums=[]
for i in range(n):
    nums.append(random.randint(1,n))
print(nums)
lst=[]
for i in range(1,n):
    if i not in nums:
        lst.append(i)
print(lst)

替换空格

方法一(replace函数)

python 复制代码
str="Hellow world"
print(str.replace(" ","%"))

方法二(手搓函数)

python 复制代码
str="Hellow world"
def func(s):
    str=""
    for i in s:
        if i !=" ":
            str+=i
        else:
            str+="%"
    return str
print(func(str))

快乐数

很巧妙的方法通过change()函数

python 复制代码
def change(x):
    sum=0
    while x>0:
        j=x%10
        sum+=j*j
        x=x//10
    return sum
def happynum(n):
    while n>9:#当两位数的时候进行转换
        n=change(n)
    if n==1:
        return True
    else:
        return False

print(happynum(18))

立方根

math库里的pow函数

python 复制代码
import math
n=int(input())
res=math.pow(n,1/3)
print(res)

最长公共前缀

先排序,拿最小的去比较

python 复制代码
strs=["abca","abc","abca","abc","abcc","ab","abcccd"]
strs.sort()
s=""
m=len(strs[1])
for i in strs:
    if i[0:m]!=strs[1][0:m]:
        m-=1
print(strs[1][0:m])
相关推荐
菲兹园长6 分钟前
MyBatis-Plus
java·开发语言·mybatis
修修修也31 分钟前
【C++】特殊类设计
开发语言·c++·特殊类·类与对象
Cloud Traveler36 分钟前
Java并发编程常见问题与陷阱解析
java·开发语言·python
山海不说话1 小时前
PyGame游戏开发(含源码+演示视频+开结题报告+设计文档)
python·pygame
byte轻骑兵1 小时前
【C++重载操作符与转换】转换与继承
开发语言·c++
炬火初现2 小时前
Qt 的原理及使用(1)——qt的背景及安装
开发语言·qt
gaoenyang7605252 小时前
QT Creator配置Kit
开发语言·qt
浪裡遊2 小时前
Typescript中的对象类型
开发语言·前端·javascript·vue.js·typescript·ecmascript
杨-羊羊羊2 小时前
什么是深拷贝什么是浅拷贝,两者区别
开发语言·前端·javascript
Y3174292 小时前
Python Day 22 学习
python·学习