05:字典方法扩展、集合、数据类型总结、运算符、控制流

以下内容仅做自己学习使用,知识点内容来自柠檬班,转载请标记来源

@File:demo1_字典的其他方法.py
@Time:2020/7/7 20:16
@Name:Ta Quan Ge

字典的其他方法:
keys:获取字典中所有的键

dic = {"a": 1, "b": "Taquange", "c": [1, 2, 3], "d": (1, 2, 3)}
res1 = dic.keys()
print(res1)

values:获取字典中的所有值

dic = {"a": 1, "b": "Taquange", "c": [1, 2, 3], "d": (1, 2, 3)}
res1 = dic.values()
print(res1)

items:获取字典的键值对(每个键值对会转换为一个元组)

dic = {"a": 1, "b": "Taquange", "c": [1, 2, 3], "d": (1, 2, 3)}
res1 = dic.items()
print(res1)

update:往字典中添加多个键值对

dic = {"a": 1, "b": "Taquange", "c": [1, 2, 3], "d": (1, 2, 3)}
dic.update({"e": "3", "f": "4"})
print(dic)

==============================================================================

@File:demo2_集合.py
@Time:2020/7/7 20:23
@Name:Ta Quan Ge

此数据类型用的很少
集合(set类型)
定义:通过{}表示

注意点:字典{}中是键值对形式,集合和列表一样,只有值

空集合的定义

set1 = {}    # 这表示一个空字典,不是空集合
se = set()   # 空集合
print(se,type(se))

add 集合添加元素的方法

se = {1, 2, 3, "zq"}
se.add(999)
print(se)

remove 集合删除元素的方法

se = {1, 2, 3, "zq"}
se.remove(1)
print(se)

集合的特性:
1.集合中元素是无序的,打印出来的结果排序是无序的
2.集合中只能存放不可变的数据–使用此特性判断数据类型是否是可变不可变
3.集合中的元素不重复,打印出来后,只会保留一个元素,可使用此特性,对列表重复的元素去重

li = [1, 1, 2, 3, 4, 5, 3, "zq"]
set1 = set(li)    # 打印结果会将重复的元素去掉
print(list(set1))   # 使用集合的特性3去除列表中重复的元素

==============================================================================
@File:demo3_数据类型总结.py
@Time:2020/7/7 20:41
@Name:Ta Quan Ge

基本的数据类型:
数值:int,float bool
序列:列表 字符串 元组 字典 集合

可变类型(是否可以增加删除元素):列表 字典 集合
不可变类型:数值 字符串 元祖

利用集合的特性,判断数据是否为可变数据类型
集合中只能存放不可变的数据,否则会报错

set1 = {"1", 2, [1, 2, 3]}
print(set1)

==============================================================================
@File:demo4_运算符的补充.py
@Time:2020/7/7 20:49
@Name:Ta Quan Ge

逻辑运算符:
or 假假为假
and 真真为真
not 非

成员运算符:
in
not in

身份运算符:
is 比较数据id是否一样
is not 比较数据id不一样

‘’’
1.逻辑运算符:
and 真真为真
print(3 > 2 and 2 > 1) # 同时成立,打印True

比较:张三的年龄比李四的大,且钱比李四多
zs = {“age”: 18, “money”: 1000}
ls = {“age”: 15, “money”: 10}
print(zs[“age”] > ls[“age”] and zs[“money”] > ls[“money”])

or 假假为假(条件同时都不成立的时候返回False)
print(zs[“age”] < ls[“age”] or zs[“money”] > ls[“money”])

not 非(取反)
print(not 8 < 5)

2.成员运算符(列表、字典、元组、字符串都能使用):

# in
li = [1, 2, 3, 4]
a = 1
print(a in li)     # 判断a在列表中是否存在
# not in
a = 1
print(a not in li)  # 判断a在列表是否不存在

字典成员运算

dic = {"name": "zq", "age": "18", "sex": "nan"}
d = {"name": "zq"}
# print(d in dic)  # 这样使用会报错
print("name" in dic.keys())
print("zq" in dic.values())

身份运算符(了解):

#is  == 是比较数据id的  id() 返回数据的id值
li = [1, 2]
li2 = [1, 2]
li3 = li
print(id(li))
print(id(li2))
print(id(li3))

print(li == li2)
print(li is li2)
print(li is li3)
#is not

==============================================================================

@File:demo05_控制流程.py
@Time:2020/7/7 21:17
@Name:Ta Quan Ge

控制流程
顺序:从上往下一行一行执行
分支:
循环

python的代码块处理:
1.python是通过缩进来区分代码块的
2.缩进通常是一个tab键(四个空格)

需求一:用户输入考试成绩,请判断是否及格?

score = float(input("请输入你的考试成绩:"))
if score >= 60:
	print("考试及格!")
else:
    print("考试不及格!")

if语句可以单独使用

score = float(input("请输入你的考试成绩:"))
if score >= 60:
     print("考试及格!")

‘’’
需求三:请根据用户输入成绩,按一下等级区分,
小于 40 E
40~59 D
60~75 C
76~85 B
86~100 A

if 条件1:
条件1成立下执行的代码
elif 条件2:
条件2成立下执行的代码
elif 条件3:
条件3成立下执行的代码
else:
以上条件都不成立下执行的代码

‘’’

一个条件语句中必须有(一个)if,else(0个或者1个),elif(0个或者n个)

score = float(input("请输入你的考试成绩:"))
if 0 <= score < 40:
    print("考试成绩为E!")
elif 40 <= score <= 59:
    print("考试成绩为D!")
elif 60 <= score <= 75:
    print("考试成绩为C!")
elif 76 <= score <= 85:
    print("考试成绩为B!")
elif 86 <= score <= 100:
    print("考试成绩为A!")
else:
    print("您输入的成绩范围不正确!")

@File:demo6_运算符和条件判断一起使用.py
@Time:2020/7/9 19:52
@Name:Ta Quan Ge

# 比较:张三的年龄比李四的大,且钱比李四多,
# 如果成立,打印张三比李四有钱,否则打印张三很穷

zs = {"age": 18, "money": 1000}
ls = {"age": 15, "money": 10}

if zs["age"] > ls["age"] and zs["money"] > ls["money"]:
    print("张三比李四有钱")
else:
    print("张三很穷")
@File:work_05day.py
@Time:2020/7/7 23:11
@Name:Ta Quan Ge


```python
# 1、有下面几个数据 ,t1 = ("aa",11)      t2= (''bb'',22)    li1 = [("cc",22)]
# 请通过学过的知识点,进行相关操作变为如下字典: {"aa":11,"cc":22,"bb":22}
#
t1 = ("aa", 11)
t2 = ("bb", 22)
li1 = [("cc", 22)]
li1.insert(0, t1)
li1.insert(2, t2)
print(dict(li1))



```python


# 2、当前有一个列表 li = [11,22,33,22,22,44,55,77,88,99,11],
#  要求一:去除列表中的重复元素,

li = [11, 22, 33, 22, 22, 44, 55, 77, 88, 99, 11]
li2 = list(set(li))
print(li2)  # 去除列表中的重复元素


#  要求二:去重后删除 77,88,99这三个元素
# 方法一:
li2.remove(77)
li2.remove(88)
li2.remove(99)
print(li2)

# 方法二:
li3 = set(li2[1:8:3])
li4 = set(li2) - li3  # 使用集合的方法-差集
print(list(li4))


# 3、利用random函数生成随机整数(范围1-9),然后用户输入一个数字,来进行比较:
# 如果大于随机数,则打印印大于随机数。
# 如果小于随机数,则打印小于随机数。
# 如果相等随机数,则打印等于随机数。

import random
a = random.randint(1,9)
b = float(input("请输入任意一个数字:"))
if b > a:
    print(f"您输入的是{b},随机数是{a},输入的数字大于随机数")
elif a == b:
    print(f"您输入的是{b},随机数是{a},输入的数字等于随机数")
else:
    print(f"您输入的是{b},随机数是{a},输入的数字小于随机数")


# 4、一家商场在降价促销。如果购买金额50-100元(包含50元和100元)之间,会给打九折,
# 如果购买金额大于100元会给打八折。编写一程序,询问购买价格,再打印出折扣和最终价格。

a = float(input("请输入您购买的价格:"))
if 50 <= a <= 100:
    money = a * 0.9
    print(f"恭喜您九折优惠,最终价格为{money}")
elif a > 100:
    money = a * 0.8
    print(f"恭喜您八折优惠,最终价格为{money}")
else:
    print("暂无折扣优惠,谢谢您的光临")


# 5、提示用户输入一个数(只考虑整数),判断这个数能同时被3和5整除,
# 能整除打印 :能整除
# 不能整除打印:不能整除

a = float(input("请输入一个数值:"))
if a % 3 == 0 or a % 5 == 0:
    print("能整除")
else:
    print("不能整除")








"""
=========
@Author:木又
@File:work_05day.py
@Time:2020/7/7 23:11
@Name:Ta Quan Ge
=========
"""
# 1、有下面几个数据 ,t1 = ("aa",11)      t2= (''bb'',22)    li1 = [("cc",22)]
# 请通过学过的知识点,进行相关操作变为如下字典: {"aa":11,"cc":22,"bb":22}
#
t1 = ("aa", 11)
t2 = ("bb", 22)
li1 = [("cc", 22)]
li1.insert(0, t1)
li1.insert(2, t2)
print(dict(li1))


# 2、当前有一个列表 li = [11,22,33,22,22,44,55,77,88,99,11],
#  要求一:去除列表中的重复元素,

li = [11, 22, 33, 22, 22, 44, 55, 77, 88, 99, 11]
li2 = list(set(li))
print(li2)  # 去除列表中的重复元素

#  要求二:去重后删除 77,88,99这三个元素
# 方法一:
li2.remove(77)
li2.remove(88)
li2.remove(99)
print(li2)

# 方法二:
li3 = set(li2[1:8:3])
li4 = set(li2) - li3  # 使用集合的方法-差集
print(list(li4))

# 3、利用random函数生成随机整数(范围1-9),然后用户输入一个数字,来进行比较:
# 如果大于随机数,则打印印大于随机数。
# 如果小于随机数,则打印小于随机数。
# 如果相等随机数,则打印等于随机数。

import random
a = random.randint(1,9)
b = float(input("请输入任意一个数字:"))
if b > a:
    print(f"您输入的是{b},随机数是{a},输入的数字大于随机数")
elif a == b:
    print(f"您输入的是{b},随机数是{a},输入的数字等于随机数")
else:
    print(f"您输入的是{b},随机数是{a},输入的数字小于随机数")


# 4、一家商场在降价促销。如果购买金额50-100元(包含50元和100元)之间,会给打九折,
# 如果购买金额大于100元会给打八折。编写一程序,询问购买价格,再打印出折扣和最终价格。

a = float(input("请输入您购买的价格:"))
if 50 <= a <= 100:
    money = a * 0.9
    print(f"恭喜您九折优惠,最终价格为{money}")
elif a > 100:
    money = a * 0.8
    print(f"恭喜您八折优惠,最终价格为{money}")
else:
    print("暂无折扣优惠,谢谢您的光临")


# 5、提示用户输入一个数(只考虑整数),判断这个数能同时被3和5整除,
# 能整除打印 :能整除
# 不能整除打印:不能整除

a = float(input("请输入一个数值:"))
if a % 3 == 0 or a % 5 == 0:
    print("能整除")
else:
    print("不能整除")

以上内容仅做自己复习使用,转载请标记来源

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值