鱼C论坛

 找回密码
 立即注册
123
返回列表 发新帖
楼主: MSK

[技术交流] Python:每日一题 79(答题领鱼币)

[复制链接]
发表于 2017-9-13 09:29:19 From FishC Mobile | 显示全部楼层
看看答案
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-9-13 09:58:36 | 显示全部楼层
def compare(s1,s2):
    for i in s1:
        if i not in s2:
            return False
    for j in s2:
        if j not in s1:
            return False
    return True
s1 = 'good day'
s2 = 'goodday'
s3 = 'gdooa dy'
print(compare(s1,s2))
print(compare(s1,s3))

结果:
False
True
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-9-13 10:03:11 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-9-22 20:38:27 | 显示全部楼层
def test_no_repeat(s1,s2):
    l1 = list(s1)
    l2 = list(s2)
    l1.sort()
    l2.sort()
    return l1 == l2

def test_repeat(s1,s2):
    return set(s1) == set(s2)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-12-5 14:40:31 | 显示全部楼层
def fun1(s1, s2): # s1内字符可以重复使用
    s = set(s2)
    for i in s:
        if i not in s1:
            return False
    return True

def fun2(s1, s2):# s1内字符不可以重复使用
    # 计算s2内字符种类及个数
    s = set(s2)
    dictS2 = {} 
    for i in s:
        dictS2[i] = s2.count(i)
    # S1中相应的字符个数应该大于等于S2中字符个数
    enough = []
    for i in dictS2:
        if s1.count(i) >= dictS2[i]:
            enough.append(True)
        else:
            enough.append(False)
    if sum(enough) == len(s):
        return True
    else:
        return False

print(fun1('abct','bat')) # True
print(fun2('abt','batt')) # False
    
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-3-29 20:58:27 | 显示全部楼层
看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-8-20 11:17:06 | 显示全部楼层
本帖最后由 永恒的蓝色梦想 于 2019-8-20 11:22 编辑

可以重复使用:
lambda s1,s2:all((i in s1 for i in set(s2)))
不可以重复使用:
lambda s1,s2:all((s1.count(i)>=s2.count(i)for i in set(s2)))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-8-20 11:57:58 | 显示全部楼层
学习来了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-8-20 15:24:34 | 显示全部楼层

新手,借鉴一下,嘿嘿
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-8-20 17:47:06 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-3-12 13:55:54 | 显示全部楼层
from collections import Counter

# 可重复使用
def f_79_dup_use(str1, str2):
    return True if Counter(set(str1)) == Counter(set(str2)) else False

# 不可重复使用
def f_79_no_dup_use(str1, str2):
    return True if Counter(str1) == Counter(str2) else False

print(f_79_dup_use('ohel', 'hello'))
print(f_79_no_dup_use('ohel', 'hello'))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-30 10:14:34 | 显示全部楼层
使用permutations模块
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-8-1 09:59:43 | 显示全部楼层
1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-12-9 09:05:11 | 显示全部楼层
学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-23 01:27

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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