用代码帮你了解Python基础(3)
作者:FUXI_Willard 发布时间:2021-03-20 07:22:46
1.循环
# 1.for...in循环,依次把list或tuple中的每个元素迭代出来
studentNames = ["Willard","ChenJD","ChenBao","LinWenYu"]
for studentName in studentNames:
print(studentName)
print("------------------------------------------------")
# 计算1-10的累加和
sumOfNums = 0
for num in [1,2,3,4,5,6,7,8,9,10]:
sumOfNums = sumOfNums + num
print("1-10的累加和是:",sumOfNums)
print("------------------------------------------------")
# 使用range()函数进行整数序列生成,range()函数为左闭右开
# 计算1-1000的累加和
sumOfNums = 0
for num in range(1001):
sumOfNums += num
print("1-1000的累加和是:",sumOfNums)
# 结果输出:
Willard
ChenJD
ChenBao
LinWenYu
------------------------------------------------
1-10的累加和是: 55
------------------------------------------------
1-1000的累加和是: 500500
# 2.while循环,只要条件满足,就不断循环,条件不满足时退出循环
# 计算100以内的奇数和
sumOfNums = 0
n = 99
while n > 0:
sumOfNums += n
n = n -2
print("100以内的奇数累加和为:",sumOfNums)
# 结果输出:
100以内的奇数累加和为: 2500
# 3.使用break语句提前退出循环
n = 1
while n < 20:
if n > 10:
break
print("n的值为:",n)
n += 1
print("The End.")
n的值为: 1
n的值为: 2
n的值为: 3
n的值为: 4
n的值为: 5
n的值为: 6
n的值为: 7
n的值为: 8
n的值为: 9
n的值为: 10
The End.
# 4.continue语句,跳过当前循环,直接开始下一次循环
n = 10
while n < 20:
n += 1
if n == 15:
continue
print("n的值为:",n)
print("The End.")
# 结果输出:
n的值为: 11
n的值为: 12
n的值为: 13
n的值为: 14
n的值为: 16
n的值为: 17
n的值为: 18
n的值为: 19
n的值为: 20
The End.
# 5.登录实例
totalFrequency = 3
inputFrequency = 0
userName = input("请输入您的账号:")
password = input("请输入您的密码:")
while inputFrequency < totalFrequency:
if ((userName == "Willard") and (password == "JD584520")):
print("账号密码正确,登录成功!")
break
else:
print("账号或密码输入错误,登录失败!")
if (totalFrequency - inputFrequency - 1) == 0:
break
print("请重新登录!您还有%d次输入账号密码的机会!"%(totalFrequency - inputFrequency - 1))
print("----------------------------------------")
inputFrequency += 1
userName = input("请重新输入您的账号:")
password = input("请重新输入您的密码:")
# 结果输出:
# 输出1:
请输入您的账号:Willard
请输入您的密码:JD584520
账号密码正确,登录成功!
---------------------------# 输出2:
请输入您的账号:Willard
请输入您的密码:jd584520
账号或密码输入错误,登录失败!
请重新登录!您还有2次输入账号密码的机会!
----------------------------------------
请重新输入您的账号:Willard
请重新输入您的密码:JD584520
账号密码正确,登录成功!--------------------------
# 输出3:
请输入您的账号:willard
请输入您的密码:JD584520
账号或密码输入错误,登录失败!
请重新登录!您还有2次输入账号密码的机会!
----------------------------------------
请重新输入您的账号:Willard
请重新输入您的密码:jd584520
账号或密码输入错误,登录失败!
请重新登录!您还有1次输入账号密码的机会!
----------------------------------------
请重新输入您的账号:willard
请重新输入您的密码:jd584520
账号或密码输入错误,登录失败!
2.字典
# dict:字典,使用键-值对(key-value)存储;
# 实例:
studentScore = {"Willard":{"Math":100,"Chinese":98,"Eng":90},
"ChenJD":{"Math":99,"Chinese":100,"Eng":98},
"ChenBao":{"Math":100,"Chinese":99,"Eng":96}}
print("Willard的成绩是:",studentScore["Willard"])
print("ChenJD的成绩是:",studentScore["ChenJD"])
print("ChenBao的成绩是:",studentScore["ChenBao"])
print("---------------------------------------------")
# 修改元素的值
print("Willard原来的成绩是:",studentScore["Willard"])
studentScore["Willard"] = {"Math":100,"Chinese":100,"Eng":100}
print("修改后Willard的成绩是:",studentScore["Willard"])
print("---------------------------------------------")
# 判断key是否存在
# 1.通过in判断key是否存在
print("判断是否存在'ChenXiaoBao'这个key.\n")
if "ChenXiaoBao" in studentScore:
print("存在'ChenXiaoBao'这个key.")
else:
print("不存在'ChenXiaoBao'这个key.")
print("---------------------------------------------")
# 2.通过get()方法,如果key不存在,返回None,或指定的value
print(studentScore.get("Willard"))
print(studentScore.get("Willard"),-1)
print("---------------------------------------------")
# 删除一个key,使用pop(key)
print("删除前的字典:\n",studentScore,"\n")
studentScore.pop("ChenBao")
print("删除后的字典:",studentScore)
# Tips:
# 字典的key必须是不可变对象,如:字符串、整数等,list是可变的;
# 结果输出:
Willard的成绩是: {'Math': 100, 'Chinese': 98, 'Eng': 90}
ChenJD的成绩是: {'Math': 99, 'Chinese': 100, 'Eng': 98}
ChenBao的成绩是: {'Math': 100, 'Chinese': 99, 'Eng': 96}
---------------------------------------------
Willard原来的成绩是: {'Math': 100, 'Chinese': 98, 'Eng': 90}
修改后Willard的成绩是: {'Math': 100, 'Chinese': 100, 'Eng': 100}
---------------------------------------------
判断是否存在'ChenXiaoBao'这个key.不存在'ChenXiaoBao'这个key.
---------------------------------------------
{'Math': 100, 'Chinese': 100, 'Eng': 100}
{'Math': 100, 'Chinese': 100, 'Eng': 100} -1
---------------------------------------------
删除前的字典:
{'Willard': {'Math': 100, 'Chinese': 100, 'Eng': 100}, 'ChenJD': {'Math': 99, 'Chinese': 100, 'Eng': 98}, 'ChenBao': {'Math': 100, 'Chinese': 99, 'Eng': 96}}删除后的字典: {'Willard': {'Math': 100, 'Chinese': 100, 'Eng': 100}, 'ChenJD': {'Math': 99, 'Chinese': 100, 'Eng': 98}}
3.集合
# 集合:set;是一组key的集合,但不存储value,且key不能重复,具有唯一性;
# 1.创建一个set,提供一个list作为输入集合
setEg = set([1,2,3])
print("集合setEg的内容:",setEg)
print("------------------------------")
# 2.集合的元素唯一性
setEg2 = set([1,1,1,2,3,4,5,3,2])
print("集合setEg2的内容:",setEg2)
print("------------------------------")
# 3.添加元素
setEg = set([1,2,3])
print("添加元素前集合的内容:",setEg)
setEg.add(5)
print("添加元素后集合的内容:",setEg)
print("------------------------------")
# 4.删除元素
setEg = set([1,2,3])
print("删除元素前集合的内容:",setEg)
setEg.remove(1)
print("删除元素后集合的内容:",setEg)
print("------------------------------")
# 5.交集、并集
setOne = set([1,2,3,4,5])
setTwo = set([1,2,4,6])
print("setOne集合的内容:",setOne)
print("setTwo集合的内容:",setTwo)
print("setOne和setTwo的交集:",(setOne & setTwo))
print("setOne和setTwo的并集:",(setOne | setTwo))
# 结果输出:
集合setEg的内容: {1, 2, 3}
------------------------------
集合setEg2的内容: {1, 2, 3, 4, 5}
------------------------------
添加元素前集合的内容: {1, 2, 3}
添加元素后集合的内容: {1, 2, 3, 5}
------------------------------
删除元素前集合的内容: {1, 2, 3}
删除元素后集合的内容: {2, 3}
------------------------------
setOne集合的内容: {1, 2, 3, 4, 5}
setTwo集合的内容: {1, 2, 4, 6}
setOne和setTwo的交集: {1, 2, 4}
setOne和setTwo的并集: {1, 2, 3, 4, 5, 6}
来源:https://fuxi-willard.blog.csdn.net/article/details/122610808
猜你喜欢
- 之前一直对于python类的继承机制认知的比较混乱,今天学习记录一下。(1)首先使用直接继承的方式class parent():  
- 目前计算机中用得最广泛的字符集及其编码,是由美国国家标准局(ANSI)制定的ASCII码(American Stand ard C
- 用ASP编写网站应用程序时间长了,难免会遇到各式各样的问题,其中关于如何上传文件到服务器恐怕是遇见最多的问题了,尤其是上传图片,比如你想要在
- 相信大家对街边林林总总的房产中介并不陌生,那么我们先看看下面这张图片。图1从右侧这家店的橱窗里,我们能迅速分清哪些是租房信息哪些是售房信息。
- 从概念上讲,大多数关系数据库系统都是类似的:它们都由一组数据库组成,且每个数据库都包含一组表。但是,所有的系统都有自己的管理数据的方法, M
- 从实时视频流中识别出人脸区域,从原理上看,其依然属于机器学习的领域之一,本质上与谷歌利用深度学习识别出猫没有什么区别。程序通过大量的人脸图片
- 这篇文章主要介绍了Python属性和内建属性实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友
- 先让我们看一个例子,了解什么是模式化窗口。以下是QQ秀商城在非登录时提示登录的一种状态。当我在非登录状态,通过保存形象的方式买一件衣服时,弹
- 今天真的被编码问题一直困扰着,午休都没进行。也真的见识到了各种编码。例如:gbk,unicode、utf-8、ansi、gb2312等。如果
- var obj=document.getElementById("id");得到的是dom对象,对该对象进行操作的时候使
- 看代码 <?php header("Content-type: text/html; charset=utf-8"
- 之前,我曾转过一个单元测试框架系列的文章,里面介绍了 unittest、nose/nose2 与 pytest 这三个最受人欢迎的 Pyth
- 在Pytorch中,torch.utils.data中的Dataset与DataLoader是处理数据集的两个函数,用来处理加载数据集。通常
- 一个网站的一个页面download.asp通过判断referer来确定是不是从他本站点过来的链接,使用这个功能我们可以用来防止下载盗链,当然
- select a.f_username from ( SELECT /*+parallel(gu,4)*/distinct gu.f_use
- 昨天给公司服务器重做了一下系统,遇到Asp附件无法上传,之前服务器上使用好好的,怎么重做了就不正常了,于是一番google,baidu,下面
- 一、常量常量是一个简单值的标识符(名字)。如同其名称所暗示的,在脚本执行期间该值不能改变(除了所谓的魔术常量,它们其实不是常量)。常量默认为
- ASP木马防御: 代码如下:const adTypeBinary=1 dim jpg(1):jpg(0)=CB
- 事实上各式Tooltips方法非常多. 不过大部分都是用Javascript实现.例如ikshow.cn, 使用的JavaScript, D
- 使用json.dumps输出中文在使用json.dumps时要注意一个问题>>> import json>>&