您的位置:首页 > 编程语言 > Python开发

python基础语法实验_列表、集合、元组、字典

2020-06-03 04:47 567 查看

**

python基础语法实验

**
本文主要是为了实现对python的基础语法和基本的数据结构进行系统的了解,比较适合初学者

1.编写程序,输入一个大于2 的自然数,然后输出小于该数字的所有素数组成的列表。

输入格式:
一个大于2的自然数。
输出格式:
小于该数字的所有素数组成的列表。
输入样例:
在这里给出一组输入。例如:
47
输出样例:
在这里给出相应的输出。例如:
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43]

num = int(input())
lst = []
for j in range(2,num):
is_sushu = 1
for i in range(2,j):
if j % i == 0:
is_sushu = 0
break
if is_sushu == 1:
lst.append(j)
print(lst)

2.编写程序,输入两个集合setA 和setB,分别输出它们的交集、并集和差集setA-setB

输入格式:两个集合
输出格式:
1、两个集合的交集
2、两个集合的并集
3、两个集合的差集
输入样例:
{4,5,23,34,11}
{4,23,14}
输出样例:
{4, 23}
{34, 4, 5, 23, 11, 14}
{34, 11, 5}

setA = eval(input())
setB = eval(input())
print(setA & setB)
print(setA | setB)
print(setA - setB)

3.输入一个字符串,输出其中出现次数最多的字符及其出现的次数,要求使用字典。

输入格式:
输入任意长度字符串。
输出格式:
字符串中出现次数最多的字符及其次数。
输入样例:
在这里给出一组输入。例如:
abcdsekjsiejdlsjdiejsl
输出样例:
在这里给出相应的输出。例如:
(‘s’, 4)

S = input()
rlt = {}
for i in S:
if i not in rlt.keys():
rlt[i] = S.count(i)
li = sorted(rlt.items(),key = lambda x:x[1],reverse=True)
print(li[0])

另外,在这里附上Python统计长字符串中字符频次的三种方法:

#第一种方法
S = input()
rlt = {}
for i in S:
if i in rlt.keys():
rlt[i] += 1
else:
rlt[i] = 1
print(rlt)

#第二种方法
S = input()
rlt = {}
for i in S:
if i not in rlt.keys():
rlt[i] = S.count(i)
print(rlt)

#第三种方法
S = input()
rlt = {}
for i in S:
rlt.setdefault(i,S.count(i))
print(rlt)
#Python 字典 setdefault() 函数和 get()方法 类似, 如果键不存在于字典中,将会添加键并将值设为默认值。

4.输入一序列数字,以空格分隔开,将其转换为元组进行操作,输出元组内7的倍数及个位是7的数。

输入格式:
输入多个自然数,以空格分隔。
输出格式:
查找元组内7的倍数及个位是7的数输出,以空格分隔。
输入样例:
在这里给出一组输入。例如:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
输出样例:
在这里给出相应的输出。例如:
7
14
17

s = input()
b = list(map(int,s.split())) #map映射
#result = set()     #除去重复元素
for i in b:
if i % 7 == 0 or i % 10 == 7:
print(i)

小结

编程世界里,一门编程语言会自带很多封装好、高效、好用的函数、类、库等等,你根据自己需求去搜,就会找到它们。会拆解、勤搜索、多使用。使用也分两层,既可以自己多敲代码,也应该多读别人的代码,琢磨同一个需求的不同实现方法,整理成类似这种笔记,那么你一定会变得很强大的!!!

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: