嵌入式Python高级 str字符串 set集合 dict字典 slice切片 推导式 高级变量公共语法 内置函数 面向对象 __int__ __str___ 私有化 属性私有化 方法私有化 面向对象三大特征 封装 继承 多态
一、str字符串
字符串就是一串字符,是编程语言中表示文本的数据类型
1. 字符串定义
Python中可以使用一对双引号或者一对单引号定义字符串
str1 = 'hello'
str2 = "hello"
2. 获取字符串中元素
和列表一样,字符串也是通过索引获取元素
str = "hello"
# 获取第三个元素
ele = str[2] # l
3. 遍历字符串
可以通过for
循环遍历字符串
str = 'hello'
for ele in str:
print(ele)
4. 字符串的常见操作
4.1. 判断
4.2. 查找替换
4.3. 切割
4.4. 去空白
5. 练习-用户名和密码校验
需求
- 用户名和密码格式校验程序
- 要求从键盘输入用户名和密码,分别校验格式是否符合规则
- 如果符合,打印
用户名合法
,密码合法
- 如果不符合,打印出不符合的原因,并提示重新输入
- 用户名长度
6-20
,用户名必须以字母开头- 密码长度至少
6
位,不能为纯数字,不能有空格
分析
1.从键盘输入用户名(需要while循环)
2.长度6-20
3.必须字母开头4.输入密码(while循环)
5.密码长度至少6位
6.不能为纯数字
7.不能有空格
实现
while True:
# 1.从键盘输入用户名(需要while循环)
name = input('请输入用户名:')
# 2.长度6-20
if not (len(name) >= 6 and len(name) <= 20):
print('用户名必须6到20位')
continue
# 3.必须字母开头 ab A-Z
# 获取第一个字母 是否是a-z A-Z a
ele = name[0]
if not ele.isalpha():
print('用户名第一个必须为字母')
continue
# 用户名满足
print('用户名合法')
break
# 4.输入密码(while循环)
while True:
pwd = input('请输入密码')
# 5.密码长度至少6位
if len(pwd) < 6:
print('密码长度至少为6位')
continue
# 6.不能为纯数字
if pwd.isdecimal():
print('密码不能为纯数字')
continue
# 7.不能有空格
# ' 张 三 '
if ' ' in pwd:
print('密码不能有空格')
continue
print('密码合法')
break
扩展
isalpha()
字符串中所有元素都是字母,则返回Trueisdecimal()
字符串中都是数字,则返回True
二、set集合
set
被称为集合,是无序的,并且集合中的元素是唯一的
1. 集合的创建
s = {'张三','李四','王五'}
集合是无序的
s = {'张三','李四','王五'}
print(s)
结果:
{'王五', '张三', '李四'}
集合元素唯一
s = {'张三','李四','王五','张三'}
print(s)
结果:
{'李四', '张三', '王五'}
2. 遍历集合中元素
通过for
循环遍历集合中的元素
s = {'张三','李四','王五'}
# 遍历集合
for ele in s:
print(ele)
3. 集合中添加元素
集合可以通过add
方法添加元素
s = {'张三','李四','王五'}
# # 添加赵六 add
s.add('赵六')
4. 集合删除元素
remove
删除,如果有 直接删除,如果没有 程序报错
s = {'张三','李四','王五'}
# 删除张三
s.remove('张三')
pop
删除,随机删除集合中的元素并返回,如果集合中没有元素,则程序报错
s = {'张三','李四','王五'}
# pop 随机删除
print(s.pop())
discard
删除,元素存在则直接删除,如果元素不存在,则不做任何操作
s = {'张三','李四','王五'}
# discard 删除元素 如果元素不存在,不做任何处理
s.discard('林青霞')
三、dict字典
1. 字典简介
dictionary(字典) 是 除列表以外 Python 之中 最灵活 的数据类型,类型为dict
- 字典同样可以用来存储多个数据
- 字典使用键值对存储数据
2. 字典的定义
- 字典用
{}
定义- 键值对之间使用
,
分隔- 键和值之间使用
:
分隔
d = {'中国':'China','英国':'England','美国':'America'}
3. 字典的特点
字典中的键相当于索引,必须是唯一的
d = {'中国':'China','英国':'England','美国':'America','美国':'USA'}
print(d)
运行:
{'中国': 'China', '英国': 'England', '美国': 'USA'}
4. 字典增删改查
4.1. 增加
字典增加元素
d = {'中国':'China','英国':'England','美国':'America'}
# 添加 法国
d['法国'] = 'France'
也可以通过setdefault方法添加
d.setdefault('法国','France')
4.2. 删除
字典删除元素
d = {'中国':'China','英国':'England','美国':'America'}
# 删除美国 如果键不在字典中,会报错
del d['法国']
也可以通过pop删除
# pop 删除元素 并且返回删除元素的值 如果删除不存在会报错
result = d.pop('法国')
清空字典
# 清空容器中的数据 还可以继续使用
d.clear()
4.3. 修改
修改字典中元素
d = {'中国':'China','英国':'England','美国':'America'}
# 修改美国
d['美国'] = 'USA'
4.4. 查询
查询元素
d