while + else
1.while与else连用
当while没有被关键字break主动结束的情况下
正常结束循环体代码之后执行else的子代码
"""
while 条件:
循环体代码
else:
循环体代码正常结束运行 才会执行子代码块
"""
count = 1
while count < 10:
if count == 4:
count += 1
continue
print(count)
count += 1
else:
print('while循环寿终正寝了!!!')

死循环与while的嵌套
1.死循环有些时候会超级影响电脑性能 造成硬件的损坏
死循环就是会占用cup工作
count = 10
while True:
count *= 1
2.while嵌套
falg =
while flag:
username = input('username:')
password = input('password:')
if username == 'jason' and password == '123':
print('登陆成功')
while flag:
cmd = input('请输入你的指令:')
if cmd =='q':
print('下次再见')
flag = False
print('正在执行您的指令:%s' % cmd')
else:
print("用户名或密码错误")

for循环
"""
for循环可以做到的事情while循环都可以做到!!!
但是for循环语法更加简单 使用频率更高
"""
一般情况下涉及到循环取值的时候 都会考虑使用for循环而不是while循环
"""
语法结构
for 变量名 in for循环对象: # 字符串、列表、字典、元组、集合
for循环的循环体代码
每次执行都会将循环对象中的一个元素赋值给变量名
ps:针对for循环语法结构中的变量名 也应该做到见名知意
如果真的没有合适的名字可以使用常用的变量名i、j、k、v、num、item...
"""
name_list = ['jason', 'kevin', 'tony', 'tank', 'oscar']
count = 0
while count < 5:
print(name_list[count])
count += 1
for name in name_list:
print(name)

for i in 'hello world':
print(i)
userinfo_dict = {'username': "jason", 'age': 18, 'gender': 'male'}
for i in userinfo_dict:
print(i)
for i in (11, 22, 33, 44, 55):
print(i)
for i in {11, 22, 33, 44, 55, 66}:
print(i)

range方法在python2和python3中有所区分
在python2中range是直接产生一个列表 元素很多的情况下比较占用空间
在python2中有一个xrange 其实就是python3里面的range
在python3中range相当于哆啦A梦的口袋 不占空间但是可以取出很多数据
在python3中就只有一个range了
count = 0
while count < 101:
print(count)
count += 1
for i in range(101):
print(i)
"""range其实一个迭代器(后面讲) 用于产生一个数据集合 但是节省空间"""
for i in range(5):
print(i)
for i in range(1, 5):
print(i)
for i in range(1, 5, 2):
print(i)

"""
什么是爬虫???
通过编写代码去网络上爬取我们需要的数据
https://movie.douban.com/top250?start=0&filter=
https://movie.douban.com/top250?start=25&filter=
https://movie.douban.com/top250?start=50&filter=
https://movie.douban.com/top250?start=75&filter=
可以自己找一个具有多页数据的网址 研究url是否有规律
有一些网址分页是用的url
有一个使用的是内部js脚本(暂且忽略)
"""
for i in range(0, 250, 25):
real_url = url_demo % i
for循环补充
1.for+break
break结束本层for循环
2.for+continue
continue结束本次for循环 直接开始下一次
3.for+else
for循环正常结束之后运行else子代码
"""与while一致"""
如何查看数据类型的内置方法
可以借助于编程软件的自动提示 采用句点符快速查看
数据类型的内置方法
int整型
1.类型转换
2.进制数转换
res = int('123')
print(res, type(res))
"""int方法只能转换纯数字的字符串"""
print(bin(100))
print(oct(100))
print(hex(100))
print(int('0b1100100', 2))
print(int('0o144', 8))
print(int('0x64', 16))
float浮点型
res = float('11.11')
print(res, type(res))
res = float('11')
print(res, type(res))
字符串内置方法
1.类型转换
str可以转换所有基本数据类型
print(str(11), type(str(11)))
print(str(11.11), type(str(11.11)))
print(str([1, 2, 3, 4]), type(str([1, 2, 3, 4])))
print(str({'name': 'jason'}), type(str({'name': 'jason'})))
print(str((1, 2, 3, 4)), type(str((1, 2, 3, 4))))
print(str({1, 2, 3, 4}), type(str({1, 2, 3, 4})))
print(str(True), type(str(True)))
s1 = 'hello world'
print(s1[0])
print(s1[2:4])
print(s1[2:9:1])
print(s1[2:9:2])
print(s1[-1])
print(s1[-1:-5:-1])
print(s1[-5:-1])
print(len(s1))
print('ll' in s1)
name = ' jason '
print(len(name))
res = name.strip()
print(res, len(res))
name1 = '$$$$jas$on$$$$'
print(name1.strip('$'))
username = input('username>>>>:').strip()
if username == 'jason':
print('我想去干饭了!!!')
data = 'jason|123|DBJ'
print(data.split('|'))
name, pwd, hobby = data.split('|')
print(data.split('|', maxsplit=1))
print(data.rsplit('|', maxsplit=1))
"""split方法切割完字符串之后是一个列表"""
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人