ad

通过《Python趣味编程入门与实战》_领略Python的趣味_6.4.2 集合的两个基本功能

网友投稿 130 2023-11-13

【摘要】 本书摘自《Python趣味编程入门与实战》一书中第6章,第4节,王征、李晓波著。

6.4.2 集合的两个基本功能

集合的两个基本功能分别是去重和成员测试。

去重是指把一个还有重复元素的列表或元组等数据类型转变成集合,其中的重复元素只出现一次。

成员测试,即判断元素是否在集合内。

单击“开始”菜单,打开 Python 3.7.2 Shell 软件,然后单击菜单栏中的 “File/New File” 命令,创建一个Python 文件,并命名为 “Python6-21.

py”, 然后输入如下代码:

通过《Python趣味编程入门与实战》_领略Python的趣味_6.4.2 集合的两个基本功能

stus = {'Tom', 'Jim', 'Mary', 'Tom', 'Jack',

'Rose',1,2,1,2,"Tom","Mary"}

print(" 输出集合,重复的元素被自动去掉:",stus)

#成员测试

if('Rose'in stus) :

print('Rose 在集合中')

else :

print ('Rose 不在集合中')

if('Zhoudao' in stus):

print('Zhoudao 在集合中')

else:

print('Zhoudao 不在集合中')

单击菜单栏中的 “Run/Run Module” 命令或按下键盘上的 “F5”, 就可以运行程序代码

6.4.3 集合的运算符

单击“开始”菜单,打开Python 3.7.2 Shell软件,然后单击菜单栏中的 “File/New File”命令,创建一个Python 文件,并命名为“Python6-22. py”, 然后输入如下代码:

a =set('abracadabrafdfposd')

b =set('alacazamsfswwssd')

print("a 集合中的元素:",a,"\n")

print("b 集合中的元素:",b,"\n")

print(" 集合的差、并、交集运算结果:\n")

print("a 和b 的差集:",a -b)

print("a 和b 的并集:",a | b)

print("a 和b 的交集:",a &b,"\n")

print(" 集合的其他运算结果:\n")

print("a 和b 中不同时存在的元素:",a ^b)

print("a 和b 的真子值:",a

print("a 和b 的子值:",a <=b)

print("a 和b 的真超值:",a >b)

print("a 和b 的超值:",a >=b)

print("a 和b 的相等:",a ==b)

print("a 和b 的不相等:",a !=b,"\n")

print(" 集合的成员测试运算结果:\n")

print("a属于b:",a in b)

print("a不属于b:",a not in b)

单击菜单栏中的 “Run/Run Module” 命令或按下键盘上的 “F5”, 就可以运行程序代码

6.4.4 集合的方法

有些方法适合所有集合,即不可变的集合和可变的集合;但有些方法只适合可变的集合。

6.4.5 实例:利用集合排序无重复的随机数

单击“开始”菜单,打开 Python 3.7.2 Shell 软件,然后单击菜单栏中的 “File/New File” 命令,创建一个Python 文件,并命名为 “Python6-23.

py”, 然后输入如下代码:

import random

mynum =input(”请输入要排序的数字个数:")

mylist1.sort()

mysnet字1排)序:",mylist1)

print("\n\n 无重复数字:",myset1)

print("\n 升序排列无重复数字",sorted(myset1)

print("\n 降序排列无重复数字",sorted(myset1,reverse=True))

首先导入 random 标准库,然后利用input() 函数设置要产生随机数的个 数,接着定义一个列表变量。然后利用for 循环产生多个随机数,并添加到列表中。

利用列表的 sort() 函数,进行排序(默认为升序),但需要注意随机产生的数会有重复数字。

定义集合,除去重复数字,然后再利 sorted() 进行排序。

单击菜单栏中的 “Run/Run Module” 命令或按下键盘上的“F5”, 就 可以运行程序代码,这时提醒“输入要排序的数字个数:”,在这里输入的是“16”(读者可以随意输入个数),然后回车。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 18664393530@aliyun.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:通过《Python趣味编程入门与实战》_领略Python的趣味_10.1.3 包括9个元素的元组
下一篇:通过《Python趣味编程入门与实战》_领略Python的趣味_6.3 字典
相关文章
×