Python练习题,判断字符串中字符是否重复,或者说是否唯一

在Python中,判断一个字符串的字符是否唯一,可以写个函数,接受一个字符串作为参数,并返回一个布尔值,表示字符串中的字符是否都是唯一的。还需要考虑一些边界情况,比如传入的字符串为None或者空字符串。

首先定义一个函数has_unique_chars,参数string,接下来完善这个函数

def has_unique_chars(string):  
    # 如果字符串为None,直接返回False  
    if string is None:  
        return False  
      
    # 如果字符串为空,则没有字符,可以认为是唯一的,返回True  
    if len(string) == 0:  
        return True  
      
    # 使用集合(set)数据结构来存储字符串中的字符  
    # 集合中的元素是唯一的,因此如果集合的大小与原始字符串长度相同,则说明所有字符都是唯一的  
    unique_chars = set(string)  
      
    # 比较集合大小和字符串长度  
    return len(unique_chars) == len(string)

这个函数利用Python的集合(set)数据结构来快速去除字符串中的重复字符。集合是一个无序且不包含重复元素的集合。通过将字符串转换为集合,我们可以很容易地比较集合的大小和原始字符串的长度。如果它们相等,则说明字符串中的所有字符都是唯一的;如果不相等,则说明有重复字符。

接下来,通过几个测试来验证这个函数的正确性:

print(has_unique_chars(None))     # 输出: False  
print(has_unique_chars(''))       # 输出: True  
print(has_unique_chars('foo'))    # 输出: False  
print(has_unique_chars('bar'))    # 输出: True

简单且高效,利用了Python的内置数据结构,能够快速地判断字符串中的字符是否唯一。在实际应用中,我们可以根据具体需求对函数进行扩展和优化。

相关推荐

  1. lua 判断字符串是否包含指定字符

    2024-03-16 12:02:06       38 阅读
  2. 「优选算法刷题」:判定字符是否唯一

    2024-03-16 12:02:06       51 阅读
  3. 程序员面试经典——01.01. 判定字符是否唯一

    2024-03-16 12:02:06       36 阅读
  4. 判断是否是json字符串

    2024-03-16 12:02:06       60 阅读
  5. sql判断字符串是否存在

    2024-03-16 12:02:06       47 阅读
  6. 判断字符串是否存在

    2024-03-16 12:02:06       30 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-16 12:02:06       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-16 12:02:06       106 阅读
  3. 在Django里面运行非项目文件

    2024-03-16 12:02:06       87 阅读
  4. Python语言-面向对象

    2024-03-16 12:02:06       96 阅读

热门阅读

  1. 【力扣】234. 回文链表

    2024-03-16 12:02:06       51 阅读
  2. leetcode第49题字母异位词分组

    2024-03-16 12:02:06       47 阅读
  3. curl c++ 实现HTTP GET和POST请求

    2024-03-16 12:02:06       49 阅读
  4. MongoDB聚合运算符:$firstN

    2024-03-16 12:02:06       47 阅读
  5. MySQL常见的数据类型

    2024-03-16 12:02:06       41 阅读
  6. 一个干净的SSL连接

    2024-03-16 12:02:06       48 阅读
  7. ajax中各个参数的含义是什么?

    2024-03-16 12:02:06       40 阅读
  8. Linux系统——rsync命令

    2024-03-16 12:02:06       34 阅读
  9. 第二十章 构建和配置 Nginx (UNIX® Linux macOS)

    2024-03-16 12:02:06       40 阅读
  10. 微信小程序订阅消息授权弹窗事件

    2024-03-16 12:02:06       40 阅读
  11. 【Node.js从基础到高级运用】八、Express 框架入门

    2024-03-16 12:02:06       39 阅读
  12. 【ansible】ansible模块的使用

    2024-03-16 12:02:06       38 阅读