python基本数据类型试题_Python笔记—练习题(基础数据类型)

这篇博客通过一系列Python编程题目,涵盖了列表操作、数字组合、乘法表生成、列表组合、鸡兔同笼问题、字符串处理和元组操作等基础知识。题目包括查找列表元素、组合计算、乘法表的两种输出方式、不重复数字的组合数量、鸡兔同笼问题的解决方案以及字符串元素的特定条件筛选等。
摘要由CSDN通过智能技术生成

!1、有两个列表

l1= [11,22,33]

l2= [22,33,44]

a.获取内容相同的元素列表for i inl1:if i inl2:print(i)#返回结果 22 33

b.获取l1中有,l2中没有的元素列表for i inl1:if i not inl2:print(i)#返回结果 11

c.获取l2中有,l1中没有的元素列表for i inl2:if i not inl1:print(i)#返回结果 44

d.获取l1和l2中内容都不同的元素for i inl1:if i not inl2:print(i)for i inl2:if i not inl1:print(i)#返回结果 11 44

!2、有1、2、3、4、5、6、7、8、8个数字,能组成多少个互不相同且无重复数字的两位数?

count=0for x in range(1,9):for y in range(1,9):if x !=y:

count= count + 1

print(count)#返回结果 56

!3、输出一份99乘法表

方法一:for x in range(1,10):for y in range(1,x+1): #剔除相同的结果输出

print(str(x) + '*' + str(y) + '=' + str(x*y))

方法二:

string= ''

for x in range(1,10):for y in range(1,x+1):

string+= str(x) + '*' + str(y) + '=' + str(x*y)+'\t'

print(string)

string= ''

#循环但每行都是清空前序重新再执行循环结果#返回结果

1 * 1 = 1

2 * 1 = 2 2 * 2 = 4

3 * 1 = 3 3 * 2 = 6 3 * 3 = 9

4 * 1 = 4 4 * 2 = 8 4 * 3 = 12 4 * 4 = 16

5 * 1 = 5 5 * 2 = 10 5 * 3 = 15 5 * 4 = 20 5 * 5 = 25

6 * 1 = 6 6 * 2 = 12 6 * 3 = 18 6 * 4 = 24 6 * 5 = 30 6 * 6 = 36

7 * 1 = 7 7 * 2 = 14 7 * 3 = 21 7 * 4 = 28 7 * 5 = 35 7 * 6 = 42 7 * 7 = 49

8 * 1 = 8 8 * 2 = 16 8 * 3 = 24 8 * 4 = 32 8 * 5 = 40 8 * 6 = 48 8 * 7 = 56 8 * 8 = 64

9 * 1 = 9 9 * 2 = 18 9 * 3 = 27 9 * 4 = 36 9 * 5 = 45 9 * 6 = 54 9 * 7 = 63 9 * 8 = 72 9 * 9 = 81!4、列表组合[1,2,4,5,6],多少种不同样的,数字不重复的组合

li= [1,2,4,5,6]

count=0for x inli:for y inli:if x !=y:

count= count + 1

print('计数' + '=' +str(count))#返回结果 计数=20

!5、用python开发程序自动计算方案:

公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱,用100文钱买100只鸡,其中公鸡、母鸡、小鸡都必须要有

问:公鸡、母鸡、小鸡要买多少只刚好凑足100文钱?for a in range(1,20):for b in range(1,33):for c in range(1,100):if a + b + c == 100:if a*5 + b*3 + c/3 == 100:print(a,b,c)#返回结果

4 18 78

8 11 81

12 4 84!6、查找列表中元素,移除每个元素的空格,并查找以a或A开头,并且以c结尾的所有元素

li= ['alec','aric','Alex','Tony','rain']

tu= ('alec','aric','Alex','Tony','rain')

dic= {'k1':'alex','k2':'aric', 'k3':'Alex','k4':'Tony'}for i inli:if i[0] == 'a' or i[0] == 'A':if i[3] == 'c':print(i)#返回结果

alec

aricfor i intu:

i= i.strip(' ')if i[0] =='a' or i[0] == 'A':if i[3] == 'c':print(i)#返回结果

alec

aric

!第三题欠着#######################################

!7、写代码,有如下元祖,按照要求实现每一个功能

tu= ('alex','eric','rain')

a、计算元祖长度并输出

b、获取元祖的第2个元素,并输出

c、获取元祖的第1-2个元素,并输出

d、请使用for输出元祖的元素

e、请使用for、len、range输出元祖的索引

f、请使用enumrate输出元祖元素和序号(序号从10开始)print(len(tu))print(tu[2])print(tu[1:2])for i intu:print(i)for l inrange(len(tu)):print(l)for l, i in enumerate(tu,10):print(l,i)#返回结果(e)#10 alex#11 eric#12 rain

!8、有如下变量,请实现要求的功能

tu= ('alex',[11,22,{'k1':'y1','k2':['age','name'],'k3':(11,22,33)},44])

a、讲述元祖的特性#一级元素不能被修改

b、请问tu变量中的第一个元素‘alex’是否可被修改?#不能

c、请问tu变量中的’k2‘对应的值是什么类型?是否可以被修改?如果可以,请在其中添加一个元素’Seven‘#列表,可以被修改

l = tu[1][2]['k2']

l.extend(['Seven'])print(l)#返回结果 ['age', 'name', 'Seven']

d、请问tu变量中的’k3‘对应的值是什么类型?是否可以被修改?如果可以,请在其中添加一个元素’Seven‘#元祖,不可以被修改

!9、有以下列表:

nums= [2,7,11,15,1,8,7]

请找到列表中任意两个元素相加能够等于9的元素组合,如[(0,1),(4,5)]

a=[]for x innums:for y innums:if x + y == 9:

a.append((x,y))print(a)#返回结果 [(2, 7), (2, 7), (7, 2), (1, 8), (8, 1), (7, 2)]

!10、分页显示内容

a、通过for循环创建301条数据,数据类型不限,如:

alex-1alex1@live.com pwd1

alex-2alex2@live.com pwd2

alex-3alex3@live.com pwd3

.....

b、提示用户,请输入要查看的页码,当用户输入指定页码,则显示指定数据

注意:-每页显示10条数据-用户输入页码是非十进制数字,则提示输入内容格式错误

user_list=[]for i in range(1,302):

temp= {'name':'alex'+str(i),'email':'alex'+str(i)+'@live.com','pwd':'pwd'+str(i)}

user_list.append(temp)print(user_list)#每页显示10条数据

s = input('请输入页码:')

s=int(s)#user_list[0,10] 1#user_list[10,20] 2#user_list[20,30] 3

start = (s-1)*10end= s*10result=user_list[start:end]for item inresult:print(item,type(item))

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值