一.数据类型
-
字符串
字符串就是一系列数字,在python中,用引号引起来的都是字符串,其中的引号可以是单引号,也可以是
双引号
python的字串列表有2种取值顺序:
·从左到右索引默认0开始的,最大范围是字符串长度少1
·从右到左索引默认-1开始的,最大范围是字符串开头 -
列表
list(列表) 是 Python 中使用最频繁的数据类型。
列表可以完成大多数集合类的数据结构实现。它支持字符,数字,字符串甚至可以包含列表(即嵌
套)。
列表用 [ ] 标识,是 python 最通用的复合数据类型。
加号 + 是列表连接运算符,星号 * 是重复操作。
-
元组
元组是另一个数据类型,类似于 List(列表)。
元组用 () 标识。内部元素用逗号隔开。但是元组不能 二次赋值,相当于只读列表。tuple = ('runoob', 786, 2.23, 'john', 70.2) tinytuple = (123, 'john') print(tuple) # 输出完整元组 print(tuple[0]) # 输出元组的第一个元素 print(tuple[1:3]) # 输出第二个至第四个(不包含)的元素 print(tuple[2:]) # 输出从第三个开始至列表末尾的所有元素 print(tinytuple * 2) # 输出元组两次 print(tuple + tinytuple) # 打印组合的元组
-
字典
字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象集合,字典
是无序的对象集合。
两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。
字典用"{ }"标识。字典由索引(key)和它对应的值value组成。dict = {} dict['one'] = "This is one" dict[2] = "This is two" tinydict = {'name': 'john', 'code': 6734, print(dict['one']) # 输出键为'one' 的值 print(dict[2]) # 输出键为 2 的值 print(tinydict) # 输出完整的字典 print(tinydict.keys()) # 输出所有键 print(tinydict.values()) # 输出所有值
增,删,改,查
info = {
'hebei':"shijiazhuang",
'shanxi':"shangluo",
'henan':"zhumadian"}
print(info)print(info["hebei"]) #访问字典值,该方法在键值不 存在时报错
print(info.get("hebei")) #该方法在之不存在的时候,返回null
print("hebei" in info) #判断键值是否存在于字典
info["henan"] = "toujingai" #有则修改
print(info)info["hubei"] = "jinzhou" #无则添加
print(info)#del info 删除字典
info.pop("henan") #删除元素
print(info)info.popitem() #随机删除print(info)
嵌套
info = {
'1001':{'name':"zhangsan",'身高':"195",'体重':"180"},
'1002':{'name':"lisi",'身高':"179",'体重':"250"},
'1002':{'name':"wangwu",'身高':"180",'体重':"130"}}
print(info)
-
集合
集合:集合是一个无序的,不重复的数据集合,可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。parame = {value01,value02,...} 或者 set(value)
关系测试
list_1 = [1,4,57]
list_1 = set(list_1)
print(list_1,type(list_1))
list_2 = set([1,8,3])
print(list_1,list_2)
#求交集
print(list_1.intersection(list_2))
#求并集
print(list_1.union(list_2))
#求差集
print(list_1.difference(list_2))#list1里面有,list2里面没有的
#求子集
print(list_1.issubset(list_2))
#求父集
print(list_1.issuperset(list_2))
#对称差集
print(list_1.symmetric_difference(list_2))
二.流程控制
-
条件判断
if 语句的判断条件可以用>(大于)、<(小于)、==(等于)、>=(大于等于)、<=(小于等于)来表示
其关系。
当判断条件为多个值时,可以使用以下形式:
if 判断条件1:
执行语句
1……
elif 判断条件
2:
执行语句
2……
elif 判断条件
3:
执行语句
3……
else:
执行语句4…… -
循环语句
①while循环语句
Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。其基本形式为:while 判断条件: 执行语句……
执行语句可以是单个语句或语句块。判断条件可以是任何表达式,任何非零、或非空(null)的值均为true。
当判断条件假false时,循环结束。a = 1 while a < 10: print(a) a+=2
while 语句时还有另外两个重要的命令 continue,break 来跳过循环,continue 用于跳过该次循环,
break 则是用于退出循环,此外"判断条件"还可以是个常值,表示循环必定成立,具体用法如下:
i = 1 i = 1while 1:
while i < 10: print(i)
i+=1 i+=1
if i%2 >0: if i > 10:
continue break
print(i)
②for循环
Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。
语法:
for循环的语法格式如下:
for iterating_var in sequence:
statements(s)
-
循环控制语句
①break 语句
python break语句,就像在C语言中,打破了最小封闭for或while循环。
break语句用来终止循环语句,即循环条件没有False条件或者序列还没被完全递归完,也会停止执行循
环语句。
break语句用在while和for循环中。
如果您使用嵌套循环,break语句将停止执行最深层的循环,并开始执行下一行代码。② continue 语句
continue 语句跳出本次循环,而break跳出整个循环。
continue 语句用来告诉Python跳过当前循环的剩余语句,然后继续进行下一轮循环。
continue语句用在while和for循环中。③pass 语句
Python pass 是空语句,是为了保持程序结构的完整性。
pass 不做任何事情,一般用做占位语句。
用户入口实现的过程
#!/bin/evn python
#--coding:utf-8--
#Author:Anliu
import json
_userName = input(“请注册账号:”)
_passWord = input(“请输入初始密码:”)
user = {“user”:_userName,
“passd”:_passWord
}
with open(“passwd”,“w”,encoding=(“utf-8”)) as f:
json.dump(user,f)
with open(“passwd”,“w”,encoding=(“utf-8”)) as f:
json.dump(user,f)
try:
with open(“passwd”,“r”)as f:
_user=(json.load(f))
_userName =_user[“user”]
_passWord =_user[“passwd”]
f.close()
except json.decoder.JSONDecodeError:
print(“您的账号已经锁定,请联系管理员…”)
exit()
i = 0
while True:
if i<3:
username = input(“username:”)
password = input(“password:”)
if username ==_userName and password ==_passWord:
print(“logining…”)
exit()
else:
if i == 2:
with open(“passwd”,“a”)as f:
f.write("#")
print(“用户账号锁定…”)
else:
print(“username or password err…”)
print(“请再输入一次…”)