五、阶段性练习(二)——基本数据类型

1、有两个列表 l1= [11,22,33]、l2=[22,33,44],
  a、获取内容相同的元素列表
l1= [11,22,33]
l2=[22,33,44]
for item in l1:
    if item in l2:
        print(item)#输出结果:22 33
    b、获取l1中有,l2中没有的元素列表
l1= [11,22,33]
l2= [22,33,44]
for item in l1:
    if item not in l2:
        print(item)#输出结果:11
  d、获取l1和l2中内容都不同的元素
l1= [11,22,33]
l2= [22,33,44]
for item in l1:
    if item not in l2:
        print(item)#结果:11
for item1 in l2:
    if item1 not in l1:
        print(item1)#结果:44
2、有1、2、3、4、5、6、7、8、8个数字,能组成多少个无重复数字的两位数?
count=0
for item1 in range(1,9):
    for item2 in range(1,9):
        if item1!=item2:
            count=count+1
print(count)#输出结果:56

3、99乘法表

  解法一:

string=" "
for item1 in range(1,10):
    for item2 in range(1,item1+1):
        string+=str(item2)+"*"+str(item1)+"="+str(item1*item2)+"	"
    print(string)
    string=" "

  解法二:利用print语法

for item1 in range(1,10):
    for item2 in range(1,item1+1):
        print(str(item2)+"*"+str(item1)+"="+str(item1*item2)+"	",end="")
    print("
",end="")

  运行结果:

  补充:print语法, print( *args, sep=' ', end=' ',)

#print( *args, sep=' ', end='
',)  基础语法
print("cat","fish")#输出结果:cat fish
# sep=' '默认为空格

print("cat","fish",sep="")#输出结果:cat吃fish
# sep被赋值为"吃"

print("11")
print("22")
#end='
',默认换行输出

print("11",end="啦啦啦")
print("22")#输出结果:11啦啦啦22

4、用Python开发程序自动计算方案:公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱,用100文钱买100只鸡,其中公鸡,母鸡,小鸡都必须要有,问公鸡,母鸡,小鸡要买多少只刚好凑足100文钱?

#设公鸡x只,母鸡y只,小鸡z只
for x in range(1,100//5):
    for y in range(1,100//3):
        for z in range(1,100):
            if x+y+z==100 and 5*x+3*y+z/3==100:
                print(x,y,z)
'''
输出结果:
4 18 78
8 11 81
12 4 84
'''

5、请用代码实现:利用下划线将列表的每一个元素拼接成字符串,li = ['alex', 'eric', 'rain']

li = ['alex','eric', 'rain']
v='_'.join(li)
print(v)#输出结果:alex_eric_rain

6、请用代码实现:利用下划线将列表的每一个元素拼接成字符串,li = ['alex', 'eric', 123]

li = ['alex', 'eric', 123]
li[2]=str(li[2])
v='_'.join(li)
print(v)#输出结果:alex_eric_123

 7、写代码,有如下元祖,按照要求实现每一个功能tu= ("alex" , 'eric' , 'rain')

   (1)计算元组长度并输出

tu= ("alex",'eric','rain')
v1= len(tu)
print(v1)#运行结果:3

  (2)获取元组的第2个元素,并输出

tu= ("alex",'eric','rain')
v2=tu[1]
print(v2)#运行结果:eric

  (3)获取元组的第1-2个元素,并输出

tu= ("alex",'eric','rain')
v3=tu[0:2]#切片方法
print(v3)#运行结果:('alex', 'eric')

  (4)请使用for、range输出元组的元素和索引

tu= ("alex",'eric','rain')
for item1 in tu:
    print(item1)
'''
运行结果:
alex
eric
rain
'''
for item2 in range(len(tu)):
    print(item2)
'''
运行结果:
0
1
2
'''

  (5)请使用enumrate输出元祖元素和序号(10开始)

tu= ("alex",'eric','rain')
for item3,item4 in enumerate(tu,10):
    print(item3,item4)
'''
运行结果:
10 alex
11 eric
12 rain
'''

8、有一下列表,nums= [2,7,11,15,1,8,7],请找到列表中任意两个元素相加能够等于9的元素集合。

nums=[2,7,11,15,1,8,7]
nums1=[]
for item1 in nums:
     for item2 in nums:
         if item1+item2==9:
             nums1.append((item1,item2))
print(nums1)#运行结果:[(2, 7), (2, 7), (7, 2), (1, 8), (8, 1), (7, 2)]
 
 
原文地址:https://www.cnblogs.com/hzzhbest/p/14342057.html