练习

# 有12345678 8个数字,能组成多少个不相同且无重复数字的两位数
count = 0
for i in range(1, 9):
    for v in range(1, 9):
        if i != v:
            count += 1
print(count)


# 99 乘法表
# 方法一
for i in range(1, 10):
    string = ""
    for j in range(1, i+1):
        string += (str(j) + "*"+str(i)+"="+str(i*j)+"\t")
    print(string)
# 方法二 (利用print的默认换行)
for i in range(1,10):
    for j in range(1,i+1):
        print(str(j) + "*"+str(i)+"="+str(i*j)+"\t",end="")
    print("\n",end="")


# 公鸡5元,母鸡3元,小鸡1元三只,100元买100只鸡,公鸡母鸡小鸡必须都有,问公鸡母鸡小鸡要买多少只刚好凑足100元
for i in range (1,100//5):
    for j in range(1,100//3):
        for t in range(1,100):
            if i+j+t==100 and 5*i+3*j+t/3==100:
                print(i,j,t)


# 用下划线将列表中的元素拼接成一个字符串 li = ["alex","eric","rain"]
li = ["alex","eric","rain",123]
li[3]=str(li[3])
str(li)
v = "_".join(li)
print(v)


# 有如下元组,按要求实现每一个功能
# tu=("alex","eric","rain")
# a 计算元组长度并输出
# b 获取元组的第二个元素并输出
# c 获取元组的1-2个元素
# d 用for 循环输出元组的元素
# e 用 for len range 输出元组的索引
#  用enumerate 输出元组的元素和符号(序号从10开始)
tu=("alex","eric","rain")
v=len(tu)
print(v)
i=tu[1]
print(i)
print(tu[0:2])
for i in tu:
    print(i)
for x in range(len(tu)):
    print(x)
for x in enumerate(tu,10):
    print(x)


tu=("alex",[11,22,{"k1":"v1","k2": ["age","name"],"k3":(11,22,33)},44])
# 在k2 对应的值中,添加一个元素“seven”
# k3 对应的值是元组所以不可以被修改
tu = ("alex", [11, 22, {"k1": "v1", "k2": ["age", "name"], "k3": (11, 22, 33)}, 44])
tu[1][2]["k2"].append("seven")
print(tu)


nums=[2,7,11,15,1,8,7]
# 找出列表中任意两个元素相加等于9的元素集合
nums=[2,7,11,15,1,8,7]
a=[]
for i in nums:
    for j in nums:
        if i+j == 9:
            a.append((i,j))
print(a)
# 找出列表中任意两个元素相加等于9的元素集合对应的索引
a=[]
for i in range(len(nums)):
    for j in range(len(nums)):
        if nums[i]+nums[j] == 9:
            a.append((i,j))
print(a)



# 列表的功能
# a 计算列表长度并输出
# b 列表中追加元素 “seven”
# c 列表的第一个位置插入元素“tony”
# d 修改列表第二个位置的元素为 “kelly”
# e 删除列表中的元素 “eric”
# f 删除列表中的第二个元素,并输出删除的元素的值和删除元素后的列表
# g 删除列表中的第三个元素,并输出是删除元素后的列表
# h 删除列表中的2-4个元素
# i 将列表中的元素反转 并输出
# j 用for len range 输出列表的索引
# k 用 enumerate 输出列表的元素和序号(序号从100开始)
# f 用for循环输出所有的列表元素
li=["alex","eric","rain"]
print(len(li))
li.append("ppp")
print(li)
li.insert(0,"tony")
print(li)

li.remove("eric")
print(li)
v=li.pop(1)
print(li,v)

li.reverse()
print(li)
for i in range(len(li)):
    print(i)
for i,q in enumerate(li,100):
    print(i,q)
for i in li:
    print(i)


# 分页显示内容
# a 通过for循环创建301 条数据 数据类型不限
# b 提示用户 输入要查看指定的页码, 当用户输入指定的页码,则显示指定数据
# 注意 -每页显示10条数据
#      -用户输入的页码是非十进制数字,则提示输入内容格式错误
user_list= []
for i in range (1,302):
    temp={"name":"alex"+str(i),"email":"alex@qq.com"+str(i),"pwd":"pwd"+str(i) }
    user_list.append(temp)
    print(user_list)
while True:
    s=input("输入1-31 页码")
    s=int(s)
    start=(s-1)*10
    end=s*10
    result=user_list[start,end]
    for item in result:
        print(item,type(item))

 

posted on 2018-08-30 22:13  lljaway  阅读(120)  评论(0编辑  收藏  举报

导航