越来越菜的第七天

今日内容概要:
作业讲解

鸡哥:********

 

 

 

 


单用户
# 1.定义类似于数据库的数据
source_data = 'jason|123'
# 2.获取用户输入的用户名和密码
username = input('username>>>:').strip()
TODO:自己可以结合自己的需求添加更多的校验
if len(username) == 0:
print('用户名不能为空')
continue
password = input('password>>>:').strip()
if len(password) == 0:
print('密码不能为空')
continue
# 3.切割原始数据得到用户名和密码再比
real_name, real_pwd = source_data.split('|') # real_name, real_pwd=['jason','123'] 解压赋值
# 4.校验用户名和密码
if username == real_name and password == real_pwd:
print("登录成功")
# 5.添加循环
while True:
# 6.添加内层循环
while True:
cmd = input('请输入您的指令>>>:').strip()
# 7.添加一个结束条件
if cmd == 'q':
break
print('正在执行您的命令:%s' % cmd)
else:
print('用户名或密码')

# 8.添加一个计数器
count = 1
# 9.判断当前尝试的次数
if count == 4:
choice = input('您已经尝试三次了 是否继续(y/n)>>>:').strip()
if choice == 'y':
count = 1
else:
print('欢迎下次使用')
break
# 10.每错一次 计数器加一
count = 1


字符串的其他内置方法

我很菜阿巴阿巴阿巴阿巴

 

 


w1 = '$$$$zqh$$$'
print(w1.strip('$'))
left左边 right右
print(w1.lstrip('$'))

# 大小写相关操作
lower将所有的英文字母变成小写 upper 将所有的字母变成小写
w2 = 'zqhZQH'
print(w2.lower())
print(w2.upper())
验证码以前不可以忽略大小写现在可以就是 code(密码)
code = 'zqh666'
print('这是来锤你的%s' %code)
user_cond = input('请输入密码')
if code == user_cond: # 统一大小写
print('没错')
if code.lower() == user_cond.lower():# 在后边加上大小写lower或者upper
print('啊啊啊啊啊啊啊啊')
print(w2.islower()) #判断是否是纯小写
print(w2.isupper()) #判断是否纯大写

#判断字符串的开头是否是指定字符
w3 = 'wyx zqh lsc zmz ctx'
print(w3.startswith('w')) #True startswith开始
print(w3.endswith('ctx')) #True endswith 结束

# 格式化输出# 占位符 %s %d
format(格式化) 4种
1跟占位符一致使用{}占位
name = 'zqh'
like = 'ctx'
print('my name is {} my like is {}'.format('zqh', 'ctx'))
# 2根据索引取值 可以反复使用
print('my name is {0} {0} {0} {0} my like {0} {1}'.format('zqh', 'ctx'))
# # 据变量名取值或者也可以说关键字
print('my name is {name} my like is {like}'.format(name='zqh', like='ctx'))
# # 4直接使用出现过的变量名
print(f'my name is {name} my like is {like}')

# 拼接字符串 #使用加号拼接 #也可以是*乘号
w4 = '好好学习天天向上'
w5 = '绝不上工地'
print(w4+w5) 好好学习天天向上绝不上工地
print(w5*6) 绝不上工地绝不上工地绝不上工地绝不上工地绝不上工地绝不上工地

# join相当于是吧括号内的元素执行for循环拿前边的符号做拼接 还有前提条件必须全部是字符串否则就是错误
w5 = [66, 'zqh', 'ctx', 'lsc']
print('$'.join(w5)) (直接报错)
print('$'.join(w5)) 绝$不$上$工$地

# 6 替换字符串里边的字符 replace(替换取代)
w6 = 'zqh is zha zah zha zha zha zha zqh zqh'
print(w6.replace('zqh', 'wyx'))
print(w6.replace('zqh', 'wyx', 2)) (填写数字控制几个从左到右)
#7 判断字符串中是否纯数字 isdigit是否chun数字 判断字符是否为数字 能否数字 判断数字
socre评分
w8 = 'zqh888'
print(w8.isdigit())
socre = input('score>>>:')
if socre.isdigit():
socre = int(socre)
else:
print('好好努力')

# 列表内置方法
list可以转换支持for循环的数据类型
可以被for循环的数据类型
字符串 列表 字典 元组 集合
列表 print(list('zqhzqhwyxwyx'))['z', 'q', 'h', 'z', 'q', 'h', 'w', 'y', 'x', 'w', 'y', 'x']
字典 print(list({'zqh': 'wyx', 'lsc': 'ctx'})) ['zqh', 'lsc']
元组 print(list((12, 21, 34, 43, 56, 65))) [12, 21, 34, 43, 56, 65]
集合 print(list((2, 4, 5, 6, 8))) [2, 4, 5, 6, 8]

#常见操作

name = ['zqh', 'wyx', 'ctx', 'lsc', 'zmz']
# 索引取值
print(name[1]) wyx
print(name[0]) zqh
# 切片操作
print(name[0:2]) ['zqh', 'wyx']
# 间隔
print(name[0:3:2]) ['zqh', 'ctx']
# 统计列表中的元素个数 len
print(len(name)) 5
# 成员运算 最小的单位是元素不是元素里边的单个字符
print('zqh'in (name))
# 列表添加元素的方式
# 列表可以自动添加索引
# 尾部添加 append(添加)
name.append('xhz')
print(name)
# 指定位置加入'单个仅限单个'元素 (insert)
name.insert(0, '好好努力')
print(name) ['好好努力', 'zqh', 'wyx', 'ctx', 'lsc', 'zmz']
name.insert(1, [12, 12, 521])
print(name)
['zqh', [12, 12, 521], 'wyx', 'ctx', 'lsc', 'zmz']
# 合并列表列表扩展
extend相当于for循环
for i in [12, 12, 521]:
name.append(i)
print(name)
w6 = '###zqh####'
w6.strip('#') #产生了新的结果 本身并没有改变
print(w6) ###zqh####
# 可变类型 列表 值改变 内存地址不变 修改的是本身
# 不可变 字符串 值改变 内存地址也改变 修改过程产生新的值
# 如何查看内存地址(id)
w1 = [1, 2, 3]
print(id(w1)) #2607576856456
w1.append(123)
print(id(w1)) #2256031594376
w2 = 'zqh'
print(id(w2))
wyx = w2.strip()
print(wyx)
print(wyx, id(w2)) 1838506418952
zqh
zqh 1838506418952
# 如何删除元素
name = ['zqh', 'wyx', 'ctx', 'lsc', 'zmz']
# 1通用删除方法(del)
del name [1]
print(name) ['zqh', 'ctx', 'lsc', 'zmz']
# 2就地删除(remove)
print(name.remove('zqh'))
print(name) ['wyx', 'ctx', 'lsc', 'zmz']
# 3弹出pop 默认尾部弹出
print(name.pop())
print(name) ['zqh', 'wyx', 'ctx', 'lsc']
# 指定删除
#print(name.pop(3)) #lsc
# 修改列表元素
name[3] = '加油'
print(name) # ['zqh', 'wyx', 'ctx', '加油', 'zmz']
# 通过索引值去指向另一个值
# 排序 sort(升序默认)
zqh = [5, 6, 7, 4, 8, 3, 9, 2, 0]
zqh.sort()
print(zqh) #[0, 2, 3, 4, 5, 6, 7, 8, 9]
# 降序 reverse(反转)
zqh.sort(reverse=True) # 修改降序
print(zqh) #[9, 8, 7, 6, 5, 4, 3, 2, 0]
# 反转 reverse
zqh.reverse()
print(zqh) #[0, 2, 9, 3, 8, 4, 7, 6, 5]
# 比较运算
h = [50, 12, 32]
x = [32, 34, 12]
print(h>x) #True 对比对应得元素

# 统计列表中某一个元素出现的次数 count(计数)
wyx = [12, 12, 12, 12, 12, 21, 12, 21, 21, 21, 23, 44, 34, 34]
print(wyx.count(12))
6
# clear 清空
wyx.clear()
print(wyx) # []空

# 队列 排队先进先出 堆栈 一个压一个
# 先进先出append()
list = []
list.append(666)
list.append(888)
list.append(999)
for i in list:
print(i)
print(list.pop())
print(list.pop())
print(list.pop())
#666
# 999
# 888
# 666
# 先进后出
list.append(666)
list.append(888)
list.append(999)
print(list.pop())
print(list.pop())
print(list.pop())
999 888 666

# 作业3
zqh = input('请输入')
wyx = int(zqh)
count = 0
qh = [5, 1, 2, 5, 6, 7, 5]
for i in qh:
if i == wyx:
count +=1
print(count)
# 请输入5
# 3

 

 

posted @   文质彬彬赵其辉  阅读(37)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下
点击右上角即可分享
微信分享提示