当前位置:
首页 > Python基础教程 >
-
用代码帮你了解Python基础(3)
这篇文章主要用代码帮你了解Python基础,使用循环,字典和集合的示例代码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
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
栏目列表
最新更新
求1000阶乘的结果末尾有多少个0
详解MyBatis延迟加载是如何实现的
IDEA 控制台中文乱码4种解决方案
SpringBoot中版本兼容性处理的实现示例
Spring的IOC解决程序耦合的实现
详解Spring多数据源如何切换
Java报错:UnsupportedOperationException in Col
使用Spring Batch实现批处理任务的详细教程
java中怎么将多个音频文件拼接合成一个
SpringBoot整合ES多个精确值查询 terms功能实
SQL Server 中的数据类型隐式转换问题
SQL Server中T-SQL 数据类型转换详解
sqlserver 数据类型转换小实验
SQL Server数据类型转换方法
SQL Server 2017无法连接到服务器的问题解决
SQLServer地址搜索性能优化
Sql Server查询性能优化之不可小觑的书签查
SQL Server数据库的高性能优化经验总结
SQL SERVER性能优化综述(很好的总结,不要错
开启SQLSERVER数据库缓存依赖优化网站性能
uniapp/H5 获取手机桌面壁纸 (静态壁纸)
[前端] DNS解析与优化
为什么在js中需要添加addEventListener()?
JS模块化系统
js通过Object.defineProperty() 定义和控制对象
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比