欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

python基础day4

程序员文章站 2022-04-06 12:28:13
...

1.转义符

"""
掌握 转义符的使用

1. 概念
    \ (反斜线) 就是转义符, 作用: (1)将有意义的转换成无意义的 或者 (2)将无意义的转换成有意义

2. 例如
    无意义: n t r , 如果 \n  \t (横向制表符)  \r (回车符)

    有意的: 列如 双引号中的双引号 , 单引号中的单引号 , \

"""
# 无意义的变成有意义的
print("我爱\t我的祖国,\n祖国也\r\n爱我!")

# 有意义的变成无意义
print("我爱我的祖国,祖国也爱我!我也爱\"")
print('我爱我的祖国,祖国也爱我!我也爱\'')
print('我爱我的祖国,祖国也爱我!我也爱\\n')

2.字符串

"""
掌握字符串加强

1. 概念
    将字符串 当作 由 多个 字母/数字/特殊符号 组成的 不可变 的 容器
    特点
        1. 有序, 每个字符有相应索引, 从0开始
"""
string = "床前明月光,疑似地上霜"
print(string)
print(string[2])
# string[2] = "太"  # 'str' object does not support item assignment 字符串是不能修改

# 字符串中的每一个字母或者数字以及符号被称为字符串中的值,也有索引
s = 'abcde123yz'
print(s[1])
# 字符串切片
s1 = s[1:5]
print(s1)
# 遍历字符
for i in s:
    print(i)
# 去除两边空格
s = '  abcde123yz  '
s2 = s.strip()
print(s2)
# 去除左边空格
s2 = s.lstrip()
print(s2)
#去除右边空格
s2=s.rstrip()
print(s2)
#去除两边字符
s = '==abcde123yz===='
s2=s.strip('=')
print(s2)
#字符串分割
s='你好 美女!'
print(s.split())
#字符串大小写转换
s='ABCDEFG'
print(s.lower())
s='abcdefg'
print(s.upper())
#判断字符串开头或者结尾的字符
print(s.startswith('ab'))
print(s.endswith('fg'))
#字符串格式化函数
print('我的名字叫:{},我的性别是:{}.'.format('张飞','男'))
print('我的名字是{0},我的性别是{2},我的年龄是:{1}.'.format('张飞','28','男'))
print('我的名字是{name},我的年龄是{age},我的性别是{sex}.'.format(name='张飞',sex='男',age=28))
#字符串连接
names=('张三','李四','王麻子')
print('-'.join(names))
#字符串替换
s='请不要说:\'*\'!'
print(s.replace('*','*'*len('*')))
#判断字符串由数字组成
s='123456'
print(s.isdigit())
s='123b456'
print(s.isdigit())


3.字典

"""
掌握 字典数据类型

1. 概念
    字典: 存储多个元素的容器
    顺序问题: 3.7 以前无序  , >=3.7 有序

备注:
    1. 每个元素 都由键值对组成
    2. 根据键获取对应的值
    3. 使用{} 定义, key-value 组成
        使用{"key":"值","key2":"值2"}

2. 什么情况下使用字典
    存储的每个元素 具有不同的含义(意义) 这个时候使用字典
"""
'''
字典定义:dictionary={key1:'value1',key2:'value2'....}
'''
# 创建字典并保存到dict
dict = {'name': '张飞', 'sex': '男'}
# 字典的添加或者修改
dict['age'] = 18  # 没有键 新增
print(dict)
dict['name'] = '关羽'  # 有键 修改(赋新值)
print(dict)
# 字典合并
d1 = {'name': '张飞', 'sex': '男'}
d2 = {'name': '刘备', 'age': '18'}
d1.update(d2)  # 打印结果为:{'name': '刘备', 'sex': '男', 'age': '18'}有键,赋对应新值.无键,新增键值对.
print(d1)
# 删除指定键值对
info = {'name': '刘备', 'sex': '男', 'age': '18'}
info.pop('age')
print(info)
del info['sex']
print(info)
# del info['sex']  # 删除不存在的键,会报错
# print(info)

# 清空字典
info = {'name': '刘备', 'sex': '男', 'age': '18'}
info.clear()
print(info)
# 根据键查询对应值
info = {'name': '刘备', 'sex': '男', 'age': '18'}
print(info.get('name'))
print(info.get('height'))  # 没有键 返回None
# 获取字典的键值对数量
info = {'name': '刘备', 'sex': '男', 'age': '18'}
print(len(info))
# 获取字典中所有键
print(info.keys())
# 判断键是否在字典中存在
info = {'name': '刘备', 'sex': '男', 'age': '18'}
v = 'name' in info
print(v)
# 遍历字典中的键
info = {'name': '刘备', 'sex': '男', 'age': '18'}
for k in info:
    print(k)
#遍历字典中的值
info = {'name': '刘备', 'sex': '男', 'age': '18'}
for v in info.values():
    print(v)
#遍历字典的键值对
info = {'name': '刘备', 'sex': '男', 'age': '18'}
for i in info.items():
    print(i)
#遍历键和值
info = {'name': '刘备', 'sex': '男', 'age': '18'}
for keys,values in info.items():
    print(keys,'=',values)

4.集合

"""
了解 集合

1. 概念:
    集合 是 一个无序的没有重复元素的 容器

    定义:
        集合={元素1,元素2,}
        集合=set({元素1,元素2,})
    注意:
        空集合: 只能通过 set() 定义空集合

    集合作用: 用于去除容器中的重复数据
    类型转换:
        list(),tuple(),set()  相互转换
"""
# 例如:
set1 = {"张飞", "刘备", "关羽", "张飞"}
print(set1)

# 集合作用: 去除重复数据
names = ["张飞", "刘备", "关羽", "张飞"]
names = list(set(names))
print(names)

# 空集合
# set2 = {} # 空字典
set2 = set()  # 空字典
print(set2)
print(type(set2))