从入门到自闭之Python 基础习题训练

"""

name = input(“>>>”)通过代码来验证name变量是什么数据类型?

"""

name = input(">>>")
print(type(name),"name")

"""if条件语句的基本结构?"""
1.if -- 如果、
官方推荐四个空格,Tab 空格和tab不能混合使用
2. if else 二选一
if 条件:
缩进,结果
else:
缩进,结果
3. elif -- 再如果
if elif elif elif 多选一或不选
if 条件:
结果
elif 条件:
结果
elif 条件:
结果
4. if elif elif else 多个选一个
if 条件:
结果
elif 条件:
结果
else:
结果
5. if if if --多个条件选多个
if 条件:
结果
if 条件:
结果
if 条件:
结果
6. if 嵌套
if 条件:
if 条件:
结果

"""
用print打印出下面内容:

⽂能提笔安天下,
武能上⻢定乾坤.
⼼存谋略何⼈胜,
古今英雄唯是君.
"""

i = "⽂能提笔安天下,\n武能上⻢定乾坤.\n⼼存谋略何⼈胜,\n古今英雄唯是君.\n"
print("i",)

a =
"""⽂能提笔安天下,
武能上⻢定乾坤.
⼼存谋略何⼈胜,
古今英雄唯是君.
"""
print(a)

"""利用if语句写出猜大小的游戏:
设定一个理想数字比如:66,让用户输入数字,如果比66大,则显示猜测的结果大了;
如果比66小,则显示猜测的结果小了;只有等于66,显示猜测结果正确。"""

a = 66
num = int(input("请输入数字:"))
if num > a:
print("大了")
elif num < a:
print("小了")
else:
print("结果正确")

"""提⽰⽤户输入他的年龄, 通过程序进⾏判断.

如果⼩于10, 提⽰⼩屁孩,
如果⼤于10, ⼩于 20, 提⽰青春期叛逆的⼩屁孩.
如果⼤于20, ⼩于30. 提⽰开始定性, 开始混社会的⼩屁孩⼉,
如果⼤于30, ⼩于40. 提⽰看老⼤不⼩了, 赶紧结婚⼩屁孩⼉.
如果⼤于40, ⼩ 于50. 提⽰家⾥有个不听话的⼩屁孩⼉.
如果⼤于50, ⼩于60. 提⽰⾃⼰⻢上变成不听 话的老屁孩⼉.
如果⼤于60, ⼩于70. 提⽰活着还不错的老屁孩⼉.
如果⼤于70, ⼩于 90. 提⽰⼈⽣就快结束了的⼀个老屁孩⼉.
如果⼤于90以上. 提⽰. 再⻅了这个世界."""

num = int(input("请输入你的年龄:"))
if num < 10:
print("小屁孩")
elif 10 < num < 20:
print("青春期叛逆的小屁孩")
elif 20 < num < 30:
print("开始定性,混社会的小屁孩")
elif 30 < num < 40:
print("老大不小了,赶紧结婚的小屁孩")
elif 40 < num < 50:
print("家⾥有个不听话的⼩屁孩⼉")
elif 50 < num < 60:
print("⾃⼰⻢上变成不听话的老屁孩⼉")
elif 60 < num < 70:
print("活着还不错的老屁孩⼉")
elif 70 < num < 90:
print("⼈⽣就快结束了的⼀个老屁孩⼉")
elif num > 90:
print("再⻅了这个世界")

"""单行注释以及多行注释?"""

1.单行注释  - #
2.多行注释  - """"""     ''''''

"""简述你所知道的Python3x和Python2x的区别?"""

  1. 源码的区别
    Python 2 源码不统一,有重复源码
    Python 3 源码统一,没有重复功能源码
  2. 除法算法的区别
    Python 2 进行除法运算时得到的结果是整数(向下取整)
    python 3 进行除法运算时得到的结果是小数
  3. input 的区别
    Python 2 input时得到的是数据本身
    Python 3 input时得到的是字符串

"""提⽰⽤户输入麻花藤. 判断⽤户输入的对不对. 如果对, 提⽰真聪明, 如果不对, 提⽰输入有误"""

n = "麻花藤"
a = input("请输入麻花藤:")
if a == n:
print("真聪明")
else:
print("输入有误")

"""⽤户输⼊⼀个⽉份. 然后判断⽉份是多少⽉. 根据不同的⽉份, 打印出不同的饮⻝(根据个⼈习惯和⽼家习惯随意编写)"""

n = int(input("请输入一个月份:"))
if n == 1:
print("肉")
elif n == 2:
print("饺子")
elif n == 3:
print("馒头")
elif n == 4:
print("面")
elif n == 5:
print("米饭")
elif n == 6:
print("水果")
elif n == 7:
print("西瓜")
elif n == 8:
print("面条")
elif n == 9:
print("臊子面")
elif n == 10:
print("凉皮")
elif n == 11:
print("烧烤")
elif n == 12:
print("砂锅")

"""
⽤户输⼊⼀个分数. 根据分数来判断⽤户考试成绩的输出不同的档次
=90 A
=80 B
=70 C
=60 D
< 60 不及格
"""
num = int(input("请输入一个分数:"))
if num >= 90:
print("A")
elif num >= 80:
print("B")
elif num >= 70:
print("C")
elif num >= 60:
print("D")
elif num < 60:
print("不及格")

"""
1)1 > 1 or 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6
"""
1 > 1 or 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6
False or True or False and True and True or False
False or True or False and True or False
False or True or False or False
True or False or False
True or False
True
"""
not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6
"""
not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6
False and True or False and True and True or False
False or False and True and True or False
False or False and True or False
False or False or False
False

"""8 or 3 and 4 or 2 and 0 or 9 and 7"""
8 or 3 and 4 or 2 and 0 or 9 and 7
8 or 4 or 2 and 0 or 9 and 7
8 or 4 or 0 or 9 and 7
8 or 4 or 0 or 7
8 or 0 or 7
8
print(8 or 3 and 4 or 2 and 0 or 9 and 7)

"""0 or 2 and 3 and 4 or 6 and 0 or 3"""
0 or 2 and 3 and 4 or 6 and 0 or 3
0 or 3 and 4 or 6 and 0 or 3
0 or 4 or 6 and 0 or 3
0 or 4 or 0 or 3
4 or 0 or 3
4
print(0 or 2 and 3 and 4 or 6 and 0 or 3)

"""6 or 2 > 1"""
6
"""3 or 2 > 1"""
3

"""0 or 5 < 4"""
False

"""5 < 4 or 3"""
3

"""2 > 1 or 6"""
True

"""3 and 2 > 1"""
True

"""0 and 3 > 1"""
0

"""2 > 1 and 3"""
3

"""3 > 1 and 0"""
0

"""3 > 1 and 2 or 2 < 3 and 3 and 4 or 3 > 2"""
True and 2 or True and 3 and 4 or True
2 or True and 3 and 4 or True
2 or 3 and 4 or True
2 or 4 or True
2

"""while循环语句基本结构?"""
while 条件:
循环体

"""5.利用while语句写出猜大小的游戏:
设定一个理想数字比如:66,让用户输入数字,
如果比66大,则显示猜测的结果大了;
如果比66小,则显示猜测的结果小了;
只有等于66,显示猜测结果正确,然后退出循环。"""
num = 66
a = int(input("请输入一个数字:"))
while True:
if a > num:
print("大了")
elif a < num:
print("小了")
else:
print("结果正确")
break

"""在5题的基础上进行升级:
给用户三次猜测机会,如果三次之内猜测对了,则显示猜测正确,退出循环,
如果三次之内没有猜测正确,则自动退出循环,并显示‘太笨了你....’。"""

num = 66
b = 3
a = True
while a:
if b > 0:
g = int(input("请输入一个数字:"))
if g == num:
print("猜测正确")
break
b -= 1
else:
a = False
else:
print("你太笨了")

"""使用while循环输出 1 2 3 4 5 6 8 9 10"""

a = 0
while a < 10:
a += 1
if a == 7:
continue
print(a)

"""求1-100的所有数的和"""
num = 0
sum = 0
while num <= 100:
sum = sum + num
num +=1
print(sum)

"""输出 1-100 内的所有奇数"""
num = 1
while num <= 99:
print(num)
num +=2

"""输出 1-100 内的所有偶数"""
num = 1
while num <= 100:
a = num % 2
if a == 0:
print(num)
num = num + 1

"""求1-2+3-4+5 ... 99的所有数的和"""
num = 1
sum = 0
while num < 100:
a = num % 2
if a == 0:
sum = sum - num
if a == 1:
sum = sum + num
num += 1
print(sum)

"""⽤户登陆(三次输错机会)且每次输错误时显示剩余错误次数(提示:使⽤字符串格式化)"""
num = 3
while num:
a = input("请您输入用户名:")
b = input("请您输入用户密码:")
if a == "alex" and b == "188":
print("成功")
break
else:
print("密码错误,剩于次数%s"%(num - 1))
num = num - 1
"""简述ASCII、Unicode、utf-8编码"""
ascii -- 不支持中文
英文一个字节

unicode 万国码
中文与英文都是四个字节

utf-8 最流行的编码集
英文--1个
欧洲--2个
亚洲--3个

"""简述位和字节的关系?"""
1字节=8位

1.有变量name = "aleX leNb" 完成如下操作:
移除 name 变量对应的值两边的空格,并输出处理结果
name = "aleX leNb"
print(name.strip())
判断 name 变量是否以 "al" 开头,并输出结果
name = "aleX leNb"
print(name.startswith("al"))
判断name变量是否以"Nb"结尾,并输出结果
name = "aleX leNb"
print(name.endswith("Nb",7,9))
将 name 变量对应的值中的 所有的"l" 替换为 "p",并输出结果
name = "aleX leNb"
print(name.replace("l","p"))
将name变量对应的值中的第一个"l"替换成"p",并输出结果
name = "aleX leNb"
print(name.replace("l","p",1))
将 name 变量对应的值根据 所有的"l" 分割,并输出结果。
name = "aleX leNb"
print(name.split("l"))
将name变量对应的值根据第一个"l"分割,并输出结果。
name = "aleX leNb"
print(name.split("l",1))
将 name 变量对应的值变大写,并输出结果
name = "aleX leNb"
print(name.upper())
将 name 变量对应的值变小写,并输出结果
name = "aleX leNb"
print(name.lower())
判断name变量对应的值字母"l"出现几次,并输出结果
name = "aleX leNb"
print(name.count("l"))
如果判断name变量对应的值前四位"l"出现几次,并输出结果
name = "aleX leNb"
print(name.count("l",0,5))
请输出 name 变量对应的值的第 2 个字符?
name = "aleX leNb"
print(name[2])
请输出 name 变量对应的值的前 3 个字符?
name = "aleX leNb"
print(name[0:3])
请输出 name 变量对应的值的后 2 个字符?
name = "aleX leNb"
print(name[-2:])

有字符串s = "123a4b5c"
通过对s切片形成新的字符串s1,s1 = "123"
s = "123a4b5c"
s1 = print(s[0:3])
通过对s切片形成新的字符串s2,s2 = "a4b"
s = "123a4b5c"
s2 = print(s[3:6])
通过对s切片形成新的字符串s3,s3 = "1345"
s = "123a4b5c"
s3 = print(s[0::2])
通过对s切片形成字符串s4,s4 = "2ab"
s = "123a4b5c"
s4 = print(s[1:6:2])
通过对s切片形成字符串s5,s5 = "c"
s = "123a4b5c"
s5 = print(s[-1])
通过对s切片形成字符串s6,s6 = "ba2"
s = "123a4b5c"
s6 = print(s[-3::-2])

使用while和for循环分别打印字符串s="asdfer"中每个元素。
for s in "asdfer":
print(s)

s = "asdfer"
b = 0
while b < len(s) :
print(s[b])
b +=1

使用for循环对s="asdfer"进行循环,但是每次打印的内容都是"asdfer"。
for s in "asdfer":
pass
print("asdfer")

使用for循环对s="abcdefg"进行循环,每次打印的内容是每个字符加上sb, 例如:asb, bsb,csb,...gsb。
for s in "abcdefg":
s = s + "sb"
print(s)

使用for循环对s="321"进行循环,打印的内容依次是:"倒计时3秒","倒计时2秒","倒计时1秒","出发!"。
s="321"
for s in "321":
a = "倒计时{}秒".format(s)
print(a)
else:
print("出发")

实现一个整数加法计算器(两个数相加):
如:content = input("请输入内容:") 用户输入:5+9或5+ 9或5 + 9,然后进行分割再进行计算。
content = input("请输入内容:").strip()
num = content.split("+")
sum = 0
for i in num:
sum += int(i)
print(sum)

选做题:实现一个整数加法计算器(多个数相加):如:content = input("请输入内容:") 用户输入:5+9+6 +12+ 13,然后进行分割再进行计算
content = input("请输入内容:")
num = content.split("+")
sum = 0
for s in num:
sum += int(s)
print(sum)

计算用户输入的内容中有几个整数(以个位数为单位)。
如:content = input("请输入内容:") # 如fhdal234slfh98769fjdla
num = 0
content = input("请输入内容:")
for s in content:
if s.isdecimal():
num += 1
print(int(num))

写代码:计算 1 - 2 + 3 ... + 99 中除了88以外所有数的总和?

num = 1
num_sum = 0
while num < 100:
if num % 2 == 1:
num_sum += num
else:
num_sum -= num
num += 1
print(num_sum+88)

选做题:写代码,完成下列需求:
用户可持续输入(用while循环),用户使用的情况:
输入A,则显示走大路回家,然后在让用户进一步选择:
是选择公交车,还是步行?
选择公交车,显示10分钟到家,并退出整个程序。
选择步行,显示20分钟到家,并退出整个程序。
输入B,则显示走小路回家,并退出整个程序。
输入C,则显示绕道回家,然后在让用户进一步选择:
是选择游戏厅玩会,还是网吧?
选择游戏厅,则显示 ‘一个半小时到家,爸爸在家,拿棍等你。’并让其重新输入A,B,C选项。
选择网吧,则显示‘两个小时到家,妈妈已做好了战斗准备。’并让其重新输入A,B,C选项。

while True:
s = input("请选择回家的方式A,B,C:").upper()
if s == "A":
print("走大路回家")
a = input("坐公交还是步行:")
if a == "公交":
print("还有十分钟到家")
break
else:
print("还有二十分钟到家")
break
elif s == "B":
print("走小路回家")
break
elif s == "C":
print("绕道回家")
m = input("去游戏厅还是网吧:")
if m == "游戏厅":
print("一个半小时到家,爸爸在家,拿棍等你。")
continue
elif m == "网吧":
print("两个小时到家,妈妈已做好了战斗准备。")

选做题:判断⼀句话是否是回⽂.回⽂: 正着念和反着念是⼀样的.例如, 上海⾃来⽔来⾃海上
a = "上海⾃来⽔来⾃海上"
if a == a[::-1]:
print("是回文")
else:
print("不是回文")

制作趣味模板程序需求:等待⽤户输⼊名字、地点、爱好,根据⽤户的名字和爱好进行任意现实 如:敬爱可亲的xxx,最喜欢在xxx地⽅⼲xxx

howie = "敬爱的{name},最喜欢在{address}地方干{hobby}".format(name =input("username:"),address = input("address:"),hobby = input("hobby:")) # 按照位置顺序进行填充
print(howie)

howie = "敬爱的{1},最喜欢在{1}地方干{1}".format(input("username:"),input("address:"),input("hobby:")) # 按照位置顺序进行填充
print(howie)

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

li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]
计算列表的长度并输出
print(len(li))
列表中追加元素"seven",并输出添加后的列表
li.append("seven")
print(li)
请在列表的第1个位置插入元素"Tony",并输出添加后的列表
li.insert(1,"Tony")
print(li)
请修改列表第2个位置的元素为"Kelly",并输出修改后的列表
li[2] = "Kelly"
print(li)
请将列表l2=[1,"a",3,4,"heart"]的每一个元素添加到列表li中,一行代码实现,不允许循环添加。
l2=[1,"a",3,4,"heart"]
li.extend(l2)
print(li)
请将字符串s = "qwert"的每一个元素添加到列表li中,一行代码实现,不允许循环添加。
s = "qwert"
li.extend(s)
print(li)
请删除列表中的元素"ritian",并输出添加后的列表
li.remove("ritian")
print(li )
请删除列表中的第2个元素,并输出删除的元素和删除元素后的列表
print(repr(li.pop(2)))
print(li)
请删除列表中的第2至4个元素,并输出删除元素后的列表
del li[2:5]
print(li)
2.写代码,有如下列表,利用切片实现每一个功能
li = [1, 3, 2, "a", 4, "b", 5,"c"]
通过对li列表的切片形成新的列表l1,l1 = [1,3,2]
del li[3:8]
print(l1)

l1 = li[0:3]
print(repr(l1))
通过对li列表的切片形成新的列表l2,l2 = ["a",4,"b"]
l2 = li[3:6]
print(repr(l2))
通过对li列表的切片形成新的列表l3,l3 = ["1,2,4,5]
l3 = li[0:8:2]
print(repr(l3))
del li[1:8:2]
print(li)
通过对li列表的切片形成新的列表l4,l4 = [3,"a","b"]
l4 = li[1:6:2]
print(repr(l4))
通过对li列表的切片形成新的列表l5,l5 = ["c"]
l5 = li[-1]
print(repr(l5))
通过对li列表的切片形成新的列表l6,l6 = ["b","a",3]
l6 = li[-3:-8:-2]
print(repr(l6))

3.写代码,有如下列表,按照要求实现每一个功能。
lis = [2, 3, "k", ["qwe", 20, ["k1", ["tt", 3, "1"]], 89], "ab", "adv"]
将列表lis中的"tt"变成大写(用两种方式)。
lis[3][2][1][0]="TT"
print(lis)

lis[3][2][1][0] = lis[3][2][1][0].upper()
print(lis)

将列表中的数字3变成字符串"100"(用两种方式)。
lis[3][2][1][1]="100"
lis[1]="100"
print(lis)

lis[3][2][1][1] =str(lis[3][2][1][1]+97)
print(lis)
将列表中的字符串"1"变成数字101(用两种方式)。
lis[3][2][1][2]=int(101)
print(lis)

lis[3][2][1][2] = int(lis[3][2][1][2].replace("1","101"))
print(lis)
4.请用代码实现:
li = ["alex", "wusir", "taibai"]
利用下划线将列表的每一个元素拼接成字符串"alex_wusir_taibai"
print(repr(li[0]+""+li[1]+""+li[2]))
5.利用for循环和range打印出下面列表的索引。
li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]
for i in range(len(li)):
print("元素的{}的索引时{}".format(li[i],i))

li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]
for i in range(len(li)):
print("元素的 %s 的索引是 %s:"%(li[i],i))

6.利用for循环和range找出100以内所有的偶数并将这些偶数插入到一个新列表中。
lst = []
for i in range(0,100,2):
lst.append(i)
print(lst)

lst = []
for i in range(100):
if i %2 == 0:
lst.append(i)
print(lst)
7.利用for循环和range 找出50以内能被3整除的数,并将这些数插入到一个新列表中。
lst = []
num = 0
for i in range(0,50,3):
lst.append(i)
print(lst)

lst = []
for i in range(50):
if i %3 == 0:
lst.append(i)
print(lst)

8.利用for循环和range从100~1,倒序打印。
lst = []
for i in range(100,0,-1):
lst.append(i)
print(lst)

9.利用for循环和range从100~10,倒序将所有的偶数添加到一个新列表中,然后对列表的元素进行筛选,将能被4整除的数留下来。
lst = []
num = 0
for i in range(100,9,-1):
if i %4 == 0:
lst.append(i)
print(lst)

10.利用for循环和range,将1-30的数字一次添加到一个列表中,并循环这个列表,将能被3整除的数改成
lst = []
for i in range(1,31):
if i %3 == 0:
lst.append("
")
else:
lst.append(i)
print(lst)
11.查找列表li中的元素,移除每个元素的空格,并找出以"A"或者"a"开头,并以"c"结尾的所有元素,并添加到一个新列表中,最后循环打印这个新列表。
li = ["TaiBai ", "alexC", "AbC ", "egon", " riTiAn", "WuSir", " aqc"]
l1 = []
for i in range(len(li)):
li[i] = li[i].strip()
if li[i].title().startswith("A") and li[i].title().startswith("a") or li[i].endswith("c"):
l1.append(li[i])
print(l1)
12.开发敏感词语过滤程序,提示用户输入评论内容,如果用户输入的内容中包含特殊的字符:
敏感词列表 li = ["老师苍", "东京比较热", "武兰", "波多"]
则将用户输入的内容中的敏感词汇替换成等长度的(老师苍就替换**),并添加到一个列表中;如果用户输入的内容没有敏感词汇,则直接添加到上述的列表中。
li = ["老师苍", "东京比较热", "武兰", "波多"]
n = input("输入敏感词汇:")
for i in li:
if n.count(i) !=0:
n = n.replace(i,""len(i)),n.count(i)
print(n)
13.有如下列表(选做题)
li = [1, 3, 4, "alex", [3, 7, 8, "TaiBai"], 5, "RiTiAn"]
循环打印列表中的每个元素,遇到列表则再循环打印出它里面的元素。
我想要的结果是:
1
3
4
alex
3
7
8
taibai
5
ritian

for i in li:
if type(i) == type(li):
for n in i:
print(n)
else:
print(i)

递归解法:
def func(lst):
for s in lst:
if type(s) == list:
func(s)
else:
print(s)
func(li)

1.请将列表中的每个元素通过 "" 链接起来。
users = ['西游记','红楼梦','三国演义']
print(repr("
".join(users).strip()))
2.请将列表中的每个元素通过 "" 链接起来。
users = ['申公豹','太乙真人',666,'渣渣辉']
print(users[0]+"
"+users[1]+""+str(users[2])+""+users[3])

3.请将元组 v1 = (11,22,33) 中的所有元素追加到列表 v2 = [44,55,66] 中。
v1 = (11,22,33)
v2 = [44,55,66]
v2.extend(v1)
print(v2)

4.请将元组 v1 = (11,22,33,44,55,66,77,88,99) 中的所有偶数索引位置的元素 追加到列表v3 = [44,55,66] 中。
v1 = (11,22,33,44,55,66,77,88,99)
v3 = [44,55,66]
for i in v1:
if v1.index(i) %2 == 0:
v3.append(i)
print(v3)

5.将字典的键和值分别追加到 key_list 和 value_list 两个列表中,如:
key_list = []
value_list = []
info = {'k1':'v1','k2':'v2','k3':'v3'}
for i in info:
key_list.append(i)
value_list.append(info.get(i))
print(key_list)
print(value_list)

6.字典dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}

a. 请循环输出所有的key
dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}
for i in dic:
print(i)

b. 请循环输出所有的value
dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}
for i in dic:
print(dic.get(i))

c. 请循环输出所有的key和value
dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}
for a,b in dic.items():
print(repr(a))
print(repr(b))

d. 请在字典中添加一个键值对,"k4": "v4",输出添加后的字典
dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}
dic["k4"] = "v4"
print(dic)

e. 请在修改字典中 "k1" 对应的值为 "alex",输出修改后的字典
dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}
dic["k1"] = "alex"
print(dic)

f. 请在k3对应的值中追加一个元素 44,输出修改后的字典
dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}
dic["k3"].append(44)
print(dic)

g. 请在k3对应的值的第 1 个位置插入个元素 18,输出修改后的字典
dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}
dic["k3"].insert(0,18)
print(dic)

7.有如下字典,请按照一下的需求对字典进行操作
av_catalog = {
"欧美":{
"www.宝元.com": ["很多免费的,世界最大的","质量一般"],
"www.alex.com": ["很多免费的,也很大","质量挺好"],
"oldboy.com": ["多是自拍,高质量图片很多","资源不多,更新慢"],
"hao222.com":["质量很高,真的很高","全部收费,屌丝请绕过"]
},
"日韩":{
"tokyo-hot":["质量怎样不清楚,个人已经不喜欢日韩范了","verygood"]
},
"大陆":{
"1024":["全部免费,真好,好人一生平安","服务器在国外,慢"]
}
}
a.给此 ["很多免费的,世界最大的","质量一般"]列表第二个位置插入一个 元素:'量很大'。
av_catalog["欧美"]["www.宝元.com"].insert(2,"量很大")
print(av_catalog)
b.将此 ["质量很高,真的很高","全部收费,屌丝请绕过"]列表的 "全部收费,屌丝请绕过" 删除。
av_catalog["欧美"]["hao222.com"].pop(-1)
print(av_catalog)
c.将此["质量怎样不清楚,个人已经不喜欢日韩范了","verygood"]列表的 "verygood"全部变成大写。
av_catalog["日韩"]["tokyo-hot"][-1] = av_catalog["日韩"]["tokyo-hot"][-1].upper()
print(av_catalog)
d.给 '大陆' 对应的字典添加一个键值对 '1048' :['一天就封了']
av_catalog["大陆"].update({"1048":"一天就封了"})
print(av_catalog)
e.删除这个键值对:"oldboy.com": ["多是自拍,高质量图片很多","资源不多,更新慢"]
del av_catalog["欧美"]["oldboy.com"]
print(av_catalog)
f.给此["全部免费,真好,好人一生平安","服务器在国外,慢"]列表的第一个元素,加上一句话:'可以爬下来'
av_catalog["大陆"]["1024"].insert(1,"可以爬下来")
print(av_catalog)

8.请循环打印k2对应的值中的每个元素。
info = {
'k1':'v1',
'k2':[('alex'),('wupeiqi'),('oldboy')],
}
for i in info["k2"]:
print(i)

9.有字符串"k: 1|k1:2|k2:3 |k3 :4" 处理成字典 {'k':1,'k1':2,'k3':4}
写代码
dict={}
str ="k: 1|k1:2|k2:3 |k3 :4"
lst = str.split("|")

print(lst)

x = []
for i in lst:
x = i.split(":")
print(x)
dict.setdefault(x[0],int(x[1]))
print(dict)

10.有如下值 li= [11,22,33,44,55,77,88,99,90] ,将所有大于 66 的值保存至字典的第一个key对应的列表中,将小于 66 的值保存至第二个key对应的列表中。
result = {'k1':[],'k2':[]}
li= [11,22,33,44,55,77,88,99,90]
lst1 = []
lst2 = []
for i in li:
if i > 66:
lst1.append(i)
elif i < 66:
lst2.append(i)
result["k1"] = lst1
result["k2"] = lst2
print(result)
11.看代码写结果

v = {"user":9}
for index in range(10):
v['users'] = index # 考察运行时最后一次运行结果
print(v)

12.输出商品列表,用户输入序号,显示用户选中的商品
"""
商品列表:
goods = [
{"name": "电脑", "price": 1999},
{"name": "鼠标", "price": 10},
{"name": "游艇", "price": 20},
{"name": "美女", "price": 998}]
要求:
1:页面显示 序号 + 商品名称 + 商品价格,如:
1 电脑 1999
2 鼠标 10
...
2:用户输入选择的商品序号,然后打印商品名称及商品价格
3:如果用户输入的商品序号有误,则提示输入有误,并重新输入。
4:用户输入Q或者q,退出程序。
"""

goods = [
{"name": "电脑", "price": 1999},
{"name": "鼠标", "price": 10},
{"name": "游艇", "price": 20},
{"name": "美女", "price": 998}]
while True:
for i in range(1,len(goods)+1): #len查看goods字符串长度,
print(f"{i} {goods[i-1]['name']} {goods[i-1]['price']}")

n = input("请您输入商品序号:").strip()
if n.isdecimal():
    if "1" <= n <= "4":
        print(goods[int(n)-1]['name'],goods[int(n)-1]['price'])
    else:
        print("输入有误")
elif n.upper() == "Q":
    print("退出程序")
    break

猜你喜欢

转载自www.cnblogs.com/heyulong1214/p/11419933.html