学习Python的第七天

一、集合

1.什么是集合

集合是容器型数据类型:将()作为容器的标志,多个元素用逗号隔开:{元素1,元素2,元素3,…}
集合是可变的;无序的
元素:不可变,唯一的

空集合

x = {}  # 空字典
print(type(x))
y = set()  # 空集合
print(type(y), len(y))

元素不可变的
元素是唯一的(契合自带去重功能)

set3 = {1, 2, 3, 1 ,2 ,2, 4}
print(set3)  # {1, 2, 3, 4}  

集合去重

names = ['张三', '李四', '王五', '张三']
names = set(names)
print(names)

集合是无序的

print({1, 2} == {2, 1})  # True

2.集合的增删改查

1)查 - 遍历
set4 = {10, 20, 78, 90}
for x in set4:
	print(x)
2)增
集合.add(元素)

在集合中添加元素

set4 = {10, 20, 78, 90}
set4.add(100)
print(set4)
集合.update(序列)

将序列中所有元素添加到集合中

3)删
集合.remove(元素)

删除指定元素(如果元素不存在会报错)

set4 = {10, 20, 78, 90}
set4.remove(78)
print(set4)
集合.discard(元素)

删除指定元素(如果元素不存在不会报错)

set4 = {10, 20, 78, 90}
set4.discard(78)
print(set4)
4)改

无法修改元素,只能删了重新添加元素

3.数学集合运算

python中的集合支持数学的集合运算

1)子集(>、<、>=、<=)

集合1>集合2 - 集合2是集合1的真子集

print({200, 300, 400} > {1, 2})
print({10, 20, 30} > {10, 20})

集合1 >= 集合2 - 集合2是集合1的子集

print({200, 300, 400} >= {1, 2})
print({10, 20, 30} >= {10, 20})
2)并集(|)
set1 = {1, 2, 3, 4, 5, 6}
set2 = {4, 5, 6, 7, 8}
print(set1 | set2)
3)交集(&)
print(set1 & set2)
4) 差集(-)
print(set1-set2)
print(set2-set1)
5)对称差集(^)
print(set1^set2)

二、字符串

1.什么是字符串

字符串是容器型数据类型:以单引号或者双引号或者""""""或者’’’’’'作为容器的标志,里面多个字符(任意符号)
不可变(不支持增删改),有序的(支持下标操作)
字符串的元素:字符串的每个基本单元,字符(任何符号都可以)

2.字符

python中没有字符对应的类型,只有字符的概念

1)普通字符

包含所有的符号,例如:数字、字母、中文、各种图形符号等

2)转义字符

和\结合后具有特殊功能和特殊意义的字符,就是转义字符(转义字符不是python的概念)
\n - 换行
’ - 一个单引号
" - 一个双引号
\ - 一个反斜杠
注意: 任何一个转义字符长度都是1

str1 = '123\nabc\n你好'
print(str1)
3)\u4位的十六进制数 - 编码字符

3.阻止转移

python中在字符串最前面加r或者R,可以让字符串中所有的转义字符功能消失

str7 = '\t123\nabc\\aaa\u4e00'
print(str7)
str8 = r'\t123\nabc\\aaa\u4e00'
print(str8)

三、字符编码

1.计算机数据存储

计算机在存储数据的时候,只能直接村塾数字数据,而且以二进制形式存储的数字
位(bit)
1字节(byte) = 8位
1KB = 1024字节
1MB = 1024KB
1GB = 1024MB
1T = 1024GB

2.字符编码

1)字符编码

为了能够让计算机存储字符,我们给每个字符关联一个具体数字,在需要存储字符的时候就存储这个字符对应的数字
每个字符对应的数字就是字符的编码值

2)编码表

保存字符和数字一一对应关系的表就是编码表
字符编码表有两种:ASCII码表 、Unicode码表

ASCII码表

用一个字节对128个字符进行编码,其中包括常用的英文符号、数字和字母。其数字编码在字母前面,大写字母的编码在小写字母前,大写字母和小写字母不连续

Unicode码表

万国码,包含了世界上所有国家所有名族的所有语言的符号。前128个字符就是ASCII码表中的字符。中文的编码范围是4e00~9fa5

4)编码字符

\u四位的十六进制数(这儿的4位的十六进制数就是字母的编码值)

str1 = 'a\u0061'  # 0061是97的16进制数
print(str1)  # aa
print('\u4e02')
5)chr函数

chr(编码值) - 获取编码对应的字符
练习: 打印所有的汉字

for code in range(0x4e00,0x9fa6):
    print(chr(code),end=' ')
6)ord函数

ord(字符) - 获取字符的编码值

print(hex(ord('嘻')),hex(ord('哈')),hex(ord('呵')))

四、获取字符

1.获取字符串

字符串获取字符和列表获取元素的方法一样

1)获取单个字符
str1 = '人生苦短,'
print(str1[2])
str2 = 'how are\n you'
print(str2[9])
2)切片
message = '只是还没告诉你,对不起我爱你~'
print(message[11:14])
3)遍历
message2 = '你以为我以为就是你以为的'
for x in message2:
    print(x)

练习:统计中文字符的个数

message3 = 'how are you? 我很好!你呢?'
count = 0
for x in message3:
    if 0x4e00 <= ord(x) <= 0x9fa5:
        count += 1
print(count)

2.加法和乘法运算

字符串1+字符串2 - 将了两个字符串合并产生一个新的字符串

str1 = 'abc'+'123'
print(str1)

字符串1N / N字符串 - 字符串重复N次产生一个新的字符串

3.比较运算:>、<、>=、<=

两个字符串比较大小 比较的是第一对不相等的字符的编码值大小
判断一个字符是否是小写字母:‘a’ <= x <= ‘z’
判断一个字符是否是小写字母:‘A’ <= x <= ‘Z’
判断一个字符是否是字母:‘a’ <= x <= ‘z’ or ‘A’ <= x <= ‘Z’
判断一个字符是否是数字字符: ‘0’ <= x <= ‘9’
判断一个字符是否是中文字符:’\u4e00’ <= x <= ‘\u9fa5’

练习:取出字符串中所有小写字母

str3 = 'aksjdOAIDJoiaasdl,之哟sakdjQOPWJDso'
str4 = ''
for x in str3:
    if 'a' <= x <= 'z':
        str4 += x
print(str4)

练习:将字符串中所有小写字母转换成大写字母

str4 = ''
for x in str3:
    if 'a' <= x <= 'z':
        x = chr(ord(x) - 32)
    str4 += x
print(str4)

4.in 和 not in

字符 in 字符串 - 判断字符串中是否有指定的字符
字符串1 in 字符串2 - 判断字符串2中是否包含字符串1

print('a' in 'abc')
print('how' in 'how are you')
print('how' in 'habco123w')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
学习 Python 第一步通常是从安装 Python 解释器开始。Python 是一种易于学习且功能强大的编程语言,适合初学者入门。以下是开始学习 Python 的步骤: 1. **下载 Python**:访问 Python 官方网站(https://www.python.org/downloads/)下载最新版本的 Python,选择适合你操作系统的版本。 2. **安装 Python**:根据安装向导的提示,安装 Python。确保在安装过程中勾选“将 Python 添加到路径”选项,这样可以方便地从命令行直接运行 Python。 3. **验证安装**:安装完成后,在终端或命令提示符中输入 `python --version` 或 `python3 --version`,确认 Python 已成功安装并显示正确的版本号。 4. **学习基础语法**:开始学习 Python 的基本语法,比如变量、数据类型(整数、浮点数、字符串、列表等)、控制结构(条件语句和循环)、函数定义等。 5. **编写简单的程序**:通过编写一些小的脚本来实践新学的知识,如打印 "Hello, World!" 或计算两个数的和。 6. **学习使用集成开发环境(IDE)**:IDE 如 PyCharm、VS Code 或 Jupyter Notebook 可以提供更好的代码编辑和交互环境。 7. **学习 Python 标准库和常用库**:Python 有很多强大的内置库(如 os、datetime、random 等)以及第三方库(如 NumPy、Pandas 和 Matplotlib),了解并学习如何使用它们。 8. **参与项目和练习**:尝试解决实际问题或参与开源项目,这有助于加深理解并提高编程能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值