奋斗的小青年的Python 基础任务三

dict字典

1.字典定义

字典也是 Python里一个非常有用的内建数据类型,序列是以连续的整数为索引,与此不同的是,字典以关键字为索引,关键字可以是任意不可变类型,通常用字符串或数值。
理解字典的最佳方式是把它看做无序的键=>值对集合。在同一个字典之内,关键字必须是互不相同。

2.字典的创建

一对大括号创建一个空的字典:{}。
构造函数 dict() 直接从键值对元组列表中构建字典。如果有固定的模式,列表推导式指定特定的键值对:
dict([(‘sape’, 4139), (‘guido’, 4127), (‘jack’, 4098)])
{‘sape’: 4139, ‘jack’: 4098, ‘guido’: 4127}

此外,字典推导可以用来创建任意键和值的表达式词典:
{x: x**2 for x in (2, 4, 6)}
{2: 4, 4: 16, 6: 36}

如果关键字只是简单的字符串,使用关键字参数指定键值对有时候更方便:
dict(sape=4139, guido=4127, jack=4098)
{‘sape’: 4139, ‘jack’: 4098, ‘guido’: 4127}

3.字典的方法
  • clear 删除所有的字典项:clear()
  • copy 返回一个新字典:copy()
  • fromkeys 创建一个新字典,其中包含指定的键,且每个键对应的值都是None
  • get 方法get为访问字典项提供了宽松的环境,如果你访问字典中没有的项就会报错;
  • updata方法使用一个字典中的项来更新另外一个字典
  • Items 方法items返回一个包含所有字典项的列表,其中每一个元素都是(key , value)的形式,字典项在列表中的排列顺序不确定
  • keys 方法keys返回一个字典视图,其中包含指定字典中的键
  • pop 方法pop用于获取与指定键相关联的键的值,并将该键-值对从字典中删除
  • popitem 方法popitem随机弹出一个字典项

集合

1.特性

集合(set)是一个无序的不重复元素序列。
可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

2.创建

创建格式:
parame = {value01,value02,…}
或者
set(value)

实例如下所示:
basket = {‘apple’, ‘orange’, ‘apple’, ‘pear’, ‘orange’, ‘banana’}
print(basket) # 这里演示的是去重功能
{‘orange’, ‘banana’, ‘pear’, ‘apple’}
‘orange’ in basket # 快速判断元素是否在集合内
True
‘crabgrass’ in basket
False

3.方法
3.1 两个集合间的运算

a = set(‘abracadabra’)
b = set(‘alacazam’)

a
{‘a’, ‘r’, ‘b’, ‘c’, ‘d’}
a - b # 集合a中包含而集合b中不包含的元素
{‘r’, ‘d’, ‘b’}
a | b # 集合a或b中包含的所有元素
{‘a’, ‘c’, ‘r’, ‘d’, ‘b’, ‘m’, ‘z’, ‘l’}
a & b # 集合a和b中都包含了的元素
{‘a’, ‘c’}
a ^ b # 不同时包含于a和b的元素
{‘r’, ‘d’, ‘b’, ‘m’, ‘z’, ‘l’}

3.2 添加元素

语法格式如下:
s.add(x)

将元素添加到集合s中,如果元素已存在,则不进行任何操作
实例(Python 3.0+):
thisset = set((“Google”, “Runoob”, “Taobao”))
thisset.add(“Facebook”)
print(thisset)
{‘Taobao’, ‘Facebook’, ‘Google’, ‘Runoob’}

还有一个方法,也可以添加元素,且参数可以是列表,元祖,字典等,语法格式如下:
s.update( x ),x 可以有多个,用逗号分开。

实例(Python 3.0+)
thisset = set((“Google”, “Runoob”, “Taobao”))
thisset.update({1,3})
print(thisset)
{1, 3, ‘Google’, ‘Taobao’, ‘Runoob’}
thisset.update([1,4],[5,6])
print(thisset)
{1, 3, 4, 5, 6, ‘Google’, ‘Taobao’, ‘Runoob’}

3.3 移除元素

语法格式如下:
s.remove(x)

将元素x从集合s中移除,如果元素不存在,则会发生错误
实例(Python 3.0+)

thisset = set((“Google”, “Runoob”, “Taobao”))
thisset.remove(“Taobao”)
print(thisset)
{‘Google’, ‘Runoob’}
thisset.remove(“Facebook”) # 不存在会发生错误
错误显示如下:
Traceback (most recent call last):
File “”, line 1, in
KeyError: ‘Facebook’

此外还有一个方法也是移除集合中的元素,且如果元素不存在,不会发生错误,格式如下所示:
s.discard()
thisset = set((“Google”, “Runoob”, “Taobao”))
thisset.discard(“Facebook”) # 不存在不会发生错误 (备注:两个删除方式,在于如果不存在的元素会不会报错)
print(thisset)
{‘Taobao’, ‘Google’, ‘Runoob’}

3.4 计算集合元素个数

语法格式如下:
len(s)

计算集合s元素个数
实例:
thisset = set((“Google”, “Runoob”, “Taobao”))
len(thisset)
3

3.5 清空集合

语法格式如下:
s.clear()

清空集合s
thisset = set((“Google”, “Runoob”, “Taobao”))
thisset.clear()
print(thisset)
set()

3.6 判断元素是否在集合中存在

语法格式如下:
x in s

判断元素x是否在集合s中,存在返回true,不存在返回false
实例:
thisset = set((“Google”, “Runoob”, “Taobao”))
“Runoob” in thisset
True
“Facebook” in thisset
False

判断语句(要求掌握多条件判断)

1.概述

python条件控制是通过一条或多条语句的执行结果(true 或 false)来决定执行的代码块,可以通过下图来简单了解条件语句的执行过程
条件
条件为true 如果条件为false (这个和左边后两个条件并列,因为不能画图,故并排写)
条件代码

2.if 语句

python中if语句的一般形式如下所示:
if condition_1:
statement_block_1
elif condition_2:
statement_block_2
else:
statement_block_3

如果"condition_1"为true将执行"statement_block_1"块语句
如果"condition_1"为false,将判断"condition_2"
如果"condition_2"为true将执行"statement_block_2"块语句
如果"condition_2"为false,将执行"statement_block_3"块语句
python中用elif代替了else if,所以if 语句的关键字为:if-elif-else

注意:
1.每个条件后面要使用冒号:,表示接下来是满足条件后要执行的语句块
2.使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块
3.在python中没有switch-case语句

实例
以下是一个简单的if实例:

var1 = 100
if var1:
print (“1 - if 表达式条件为 true”)
print (var1)

var2 = 0
if var2:
print (“2 - if 表达式条件为 true”)
print (var2)
print (“Good bye!”)

执行以上代码,输出结果为:
1-if 表达式为true
100
good bye!

3.if 嵌套

在嵌套if语句中,可以把if…elif…else结构中
if 表达式1:
语句
if表达式2;
语句
else表达式3:
语句
else:
语句
elif 表达式4:
语句
else:
语句

实例:
num=int(input(“输入一个数字:”))
if num%20:
if num%3
0:
print (“你输入的数字可以整除 2 和 3”)
else:
print (“你输入的数字可以整除 2,但不能整除 3”)
else:
if num%3==0:
print (“你输入的数字可以整除 3,但不能整除 2”)
else:
print (“你输入的数字不能整除 2 和 3”)

将以上程序保存到 test_if.py 文件中,执行后输出结果为:
$ python3 test.py
输入一个数字:6
你输入的数字可以整除 2 和 3

三目表达式

Python不像java等这些语言有类似:
 判段的条件?条件为真时的结果:条件为假时的结果
这样的三目运算,
但是Python也有自己的三目运算符:   
 条件为真时的结果 if 判段的条件 else 条件为假时的结果。
public class MyActivity extends AppCompatActivity {
1 x = int(input(“please enter first integer:”))
2 y = int(input(“please enter second integer:”))
3
4 #一般的写法
5 if (x == y):
6 print(“两数相同!”)
7 elif(x > y):
8 print(“较大的数为:”,x)
9 else:
10 print(“较大的数为:”,y)
11
12 # 三目运算符写法
13 print(x if(x>y) else y)

循环语句

1.概述

python中的循环语句有for和while,python循环语句的控制结构图如下所示:
codition
true false
statement1 further
statement2 statements
… of script
statement多

2.while 循环

python中while 语句的一般形式:
while 判断条件:
语句

同样需要注意冒号和缩进,另外,在python中没有do…while循环
以下实例使用了while来计算1到100的总和:

n = 100
sum = 0
counter = 1
while counter <= n:
sum = sum + counter
counter += 1
print(“1 到 %d 之和为: %d” % (n,sum))

执行结果如下:
1到100之和为:5050

3.无限循环

我们可以通过设置条件表达式永远不为false来实现无限循环,实例如下:
var = 1
while var == 1 : # 表达式永远为 true
num = int(input(“输入一个数字 :”))
print ("你输入的数字是: ", num)

print (“Good bye!”)

执行以上脚本,输出结果如下:
输入一个数字:5
你输入的数字是:5
输入一个数字:

4.while循环使用else语句

在while…else在条件语句中为false时执行else的语句块:
实例:
count = 0
while count < 5:
print (count, " 小于 5")
count = count + 1
else:
print (count, " 大于或等于 5")

执行以上脚本,输出结果如下:
0 小于 5
1 小于 5
2 小于 5
3 小于 5
4 小于 5
5 大于或等于 5

5.简单语句组

类似if语句的语法,如果你的while循环体中只有一条语句,你可以将该语句与while写在同一行中,
如下所示:
实例:
flag = 1
while (flag): print (‘欢迎访问菜鸟教程!’)
print (“Good bye!”)

注意:以上的无限循环你可以使用 CTRL+C 来中断循环。

执行以上脚本,输出结果如下:
欢迎访问菜鸟教程!
欢迎访问菜鸟教程!
欢迎访问菜鸟教程!
欢迎访问菜鸟教程!
欢迎访问菜鸟教程!
……

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值