首页 > 编程语言 > 详细

Python基础第四天

时间:2017-02-19 15:55:36      阅读:841      评论:0      收藏:0      [点我收藏+]

python基础知识练习二:

1、用下划线将列表的每一个元素拼接成字符串
li =[alex,eric,rain,234]
li[3] = str(li[3])
v = _.join(li)
print(v)
2、查找列表中元素,移除每个元素的空格,并查找以a 或A 开头并且以c结尾的所有元素。
li = [alex, aric, Alex,Tony,rain]
tu = (alex, aric,Alex,Tony, rain)
dic = {k1:alex,k2: aric,k3:Alex,k4:Tony,k5:rain}
for i in li:
     v1 = i.strip()
     if (v1.startswith(a)or v1.startswith(A)) and v1.endswith(c):
         print(v1)

 for i in tu:
     v1 = i.strip()
     if (v1.startswith(a)or v1.startswith(A)) and v1.endswith(c):
         print(v1)

 for i in dic.values():
     v1 = i.strip()
     if (v1.startswith(a)or v1.startswith(A)) and v1.endswith(c):
         print(v1)

3、写代码,有如下列表,按照要求实现每一个功能

# 3a、计算列表长度并输出
li =[alex,eric,rain]
v = len(li)
print(v)

# b.列表中追加元素“seven”,并输出添加后的列表
li.append(seven)
print(li)

# c.请在列表的第1个位置插入元素“Tony”,并输出添加后的列表
li.insert(0,Tony)
print(li)

# d.请修改列表第2个位置的元素为“Kelly”,并输出修改后的列表
li[1] = Kelly
print(li)

# e.请删除列表中的元素“eric”,并输出修改后的列表
li.remove(eric)
print(li)

# f.请删除列表中的第2个元素,并输出删除的元素的值和删除元素后的列表
v = li.pop(2)
print(v)
print(li)

# g.请删除列表中的第3个元素,并输出删除元素后的列表
del li[2]
print(li)

# h.请删除列表中的第2 至4 个元素,并输出删除元素后的列表
del li[0:2]
print(li)


# i.请将列表所有的元素反转,并输出反转后的列表
li.reverse()
print(li)

# j.请使用for、len、range 输出列表的索引
 for i in range(len(li)):
     print(i)

# l.请使用for 循环输出列表的所有元素
for i in li:
     print(i)

4、写代码,有如下列表,请按照功能要求实现每一个功能

li = [hello,seven,[mon,[h,Kelly],all],123,67]
# 4a.请根据索引输出“Kelly”
v = li[2][1][1]
print(v)

# 4b.请使用索引找到‘all‘元素并将其修改为“ALL”
li[2][2]=ALL
print(li)

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

tu = (alex,eric,rain)
# a.计算元组长度并输出
v = len(tu)
print(v)

# b.获取元组的第2个元素,并输出
v = tu[1]
print(v)

# c.获取元组的第1-2个元素,并输出
v = tu[0:2]
print(v)

# d.请使用for 输出元组的元素
for i in tu:
     print(i)

# e.请使用for、len、range 输出元组的索引
for i in range(len(tu)):
     print(i)

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

tu = (alex,[11,22,{k1:v1,k2:[age,name],k3:(11,22,33)},44])
# a.讲述元祖的特性
# 一级元素不可被修改、删除、增加

# b.‘k2‘变量对应的值是列表,可以被修改。,请在其中添加一个元素“Seven”
v = tu[1][2][k2].append(Seven)
print(tu)

# c.‘k3‘变量对应的值是元祖,不可以被修改   可以转换成列表添加元素修改

7、字典

dic = {k1:v1,k2:v2,k3:[11,22,33]}
# 7a、请循环输出所有的key,value
for k,v in dic.items():
     print(k,v)

# d.请在字典中添加一个键值对,"k4":"v4",输出添加后的字典
v = dic.setdefault(k4,v4)
print(dic,v)

# e.请在修改字典中“k1”对应的值为“alex”,输出修改后的字典
dic[k1]=alex
print(dic)

# f.请在k3 对应的值中追加一个元素44,输出修改后的字典
dic[k3].append(44)
print(dic)

# g.请在k3 对应的值的第1个位置插入个元素18,输出修改后的字典
dic[k3].insert(0,18)
print(dic)

8、转换

# a.将字符串s="alex"转换成列表,元祖
s="alex"
l=list(s)
t=tuple(s) print(l,t)

# b.将列表li=["alex","seven"]转换成元组
li = ["alex","seven"]
tu = tuple(li)
print(tu)

# ***d.将列表li=["alex","seven"]转换成字典且字典的key按照10开始向后递增
li = ["alex","seven"]
dic = {}
for i,name in enumerate(li,10):
     dic[i] = name
print(dic)
9、有如下值集合[11,22,33,44,55,66,77,88,99,90],将所有大于66的值保存至字典的第一个key 中,
将小于66的值保存至第二个key 的值中。
li = [11,22,33,44,55,66,77,88,99,90]
v1 = []
v2 = []
for i in li:
     if i > 66:
         v1.append(i)      
     elif i < 66:
         v2.append(i)
dic = {key1:v1,key2:v2}
print(dic)
10、输出商品列表,用户输入序号,显示用户选中的商品
li = ["手机","电脑",鼠标垫,游艇]
# a.允许用户添加商品
# b.用户输入序号显示内容
dic = {}
for i,num in enumerate(li,1):
      dic[i] = num
print(dic)
user = int(input(>>>))
print(li[user-1])
12、列举布尔值是False 的所有值
None “ ” () { } [ ] 0
13、有两个列表
l1=[11,22,33]
l2=[22,33,44]
# 13a.获取内容相同的元素列表
v = []
for i in l1:
     for j in l2:
         if i == j:
             v.append(i)
print(v)

# b.获取l1中有,l2 中没有的元素列表
for i in l1:
     if i not in l2:
         print(i)
# d.获取l1和l2中内容都不同的元素
for i in l1:
     if i not in l2:
         print(i)
for j in l2:
     if j not in l1:
         print(j)
14、利用For 循环和range 输出
# a.For 循环从小到大输出1-100
for i in range(1,101):
     print(i)

# b.For 循环从大到小输出100-1
for i in range(100,0,-1):
      print(i)

# c.While 循环从小到大输出1-100
i = 1
while i < 101:
     print(i)
     i +=1

# d.While 循环从大到小输出100-1
i = 100
while i > 0:
     print(i)
     i -=1
15、购物车
# 功能要求:
# 要求用户输入总资产,例如:2000
# 显示商品列表,让用户根据序号选择商品,加入购物车
# 购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。
money = int(input(总资产:))
goods = [{"name":"电脑","price":1999},{"name":"鼠标","price":10},{"name":"游艇","price":20},{"name":"美女","price":998}]
for i,good in enumerate(goods,1):
     print(i,good)
user = int(input(请输入商品号:))
if int(goods[user-1][price]) >= money:
     print(余额不足)
else:
     print(购买成功)
16、分页显示内容
# a.通过for 循环创建301 条数据,数据类型不限,
# b.提示用户请输入要查看的页码,当用户输入指定页码,则显示指定数据
user_list = []
for i in range(1,302):
     temp = {name:alex+str(i),email:alex@live.com +str(i),pwd:pwd+str(i)}
     user_list.append(temp)
# #每页显示10 条数
while True:
     s = input(请输入页码:)
     s = int(s)
     start = (s-1) * 10
     end = s * 10
     result  = user_list[start: end]
     for item in result:
         print(item,type(item))
17、有1、2、3、4、5、6、7、8、8 个数字,能组成多少个互不相同且无重复数字的两位数?
for i in range(1,9):
     for j in range(1,9):
         if i != j:
             print(int(i*10+j))
18、利用for 循环和range 输出9*9乘法表
for i in range(1,10):
     for j in range(1,i+1):
         print({0} * {1} = {2}.format(i,j,i*j),end = "  " )#end = " " 作用就是:内循环不换行
     print(\n,end = " " )
19、有一下列表,nums=[2,7,11,15,1,8,7] 请找到列表中任意两个元素相加能够等于9 的元素集合
nums = [2, 7, 11, 15, 1, 8, 7]
li = []
for i in nums:
     for j in nums:
         if i + j == 9:
             li.append((i,j))
print(li)
li = []
for i in range(len(nums)):
     for j in range(len(nums)):
         if nums[i] + nums[j] ==9:
             li.append((i,j),)
print(li)
20.公鸡5 文钱一只,母鸡3 文钱一只,小鸡3 只一文钱,用100 文钱买100 只鸡,其中公鸡,母鸡,小鸡都必须要有,问公鸡,母
鸡,小鸡要买多少只刚好凑足100 文钱?
for x in range(1,20) :
     for y in range(1,33) :
         for z in range (1,100) :
             if x + y +z ==100 and 5*x + 3*y + z/3 ==100:
                 print(x,y,z)

 

Python基础第四天

原文:http://www.cnblogs.com/xyd134/p/6415772.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!