Python语法小白入门(二)

简介: Python语法小白入门

8 .元组

01.什么是元组


可变序列:列表、字典。当元素发生改变时,地址不发生改变

不可变序列:字符串,元组。

元组: python内置的数据结构之一,是一个不可变序列


t=('Python','hello',90)


02.元组的创建方式

  • 直接小括号
 t=('Python','hello',90)


  • 使用内置函数tuple()


t=tuple(('Python','hello',90))


  • 只包含一个元组的元素需要使用逗号和小括号


t=(10,)


空元组的创建方式:

-t4=() t5=tuple()

为什么要将元组设计成不可变序列:

  • 在多任务环境下,同时操作对象时不需要加锁
  • 因此,在程序中尽量使用不可变序列。


03.元组的遍历


t=tuple(('Python','hello',90))
for item in t :
    print(item)

04.集合的概述与创建

集合:

集合时Python语言提供的内置数据结构,与列表、字典一样都属于可变类型的序列,集合是没有value的字典

  • 第一种创建方式
s={5,2,3,9,7,1}//不能重复
  • 第二种创建方式
    s1=set(range(6))
    s2=set([1,2,3,4,5,6])
    print(s1)

定义一个空集合


s7=set()


05.集合间的关系


  • 判断两个集合间是否相等


s1==s2 ,s1!=s2
  • 一个集合是否是另一个集合的子集


s.issubset(s1) s是不是s1的子集


  • 一个集合是否是另一个集合的超集


s.issuperset(s1)


  • 两个集合是否有交集


s.isdisjoint(s1)


06.集合的数据操作

  1. 交集
s1={10,20,30}
s2={20,30,40}
print(s1 & s2)
print(s1.intersection(s2))
  1. 并集操作


print(s1 | s2)
print(s1.union(s2))


  1. 差集操作


print(s1.difference(s2))


07.集合生成式


lst=[i*i for i in range(6)]
print(lst)


9.字符串

01.字符串的驻留机制


字符串:在Python中字符串是基本数据类型,是一个不可变的字符序列

字符串驻留机制:

仅保存一份相同且不可变字符串的方法,不同的值被存放在字符串的驻留池中,Python的驻留机制对相同字符串只保留一份拷贝,后续创建相同字符串时,不会开辟新空间,而是把该字符串的地址赋给新创建的变量。


02.字符串的常用操作


查询方法


index():查找子串substr第一次出现的位置,如果查找的子串不存在时,则抛出ValueError

rindex():查找子串substr最后一次出现的位置,如果查找的子串不存在时,则抛出ValueError

find():查找子串substr第一次出现的位置,如果查找的子串不存在时,则返回-1

rfind():查找子串substr最后一次出现的位置,如果查找的子串不存在时,则返回-1


03.字符串的大小写转换操作


大小写转换:


upper():把字符串所有字符都转成大写字母(转成大写之后会产生一个新的字符串对象)

lower():把字符串中所有字符都转成小写字母

swapcase():把字符串中所有大写字母转成小写字母,把所有小写字母都转成大写字母

capitalize():把第一个字符转换为大写,其余字符转换为小写

title():把每个单词的第一个字符转换为大写,把每个单词的剩余字符转换为小写


04.字符串内容对齐的操作方法


center():居中对齐,第一个参数指定宽度,第二个参数指定填充符,第二个参数是可选的,默认是空格,如果设置宽度小于实际宽度则返回源字符串。

ljust:左对齐,第一个参数指定宽度,第二个参数指定填充符,第二个参数是可选的,默认是空格,如果设置宽度小于实际宽度则返回源字符串。

rjust():右对齐,第一个参数指定宽度,第二个参数指定填充符,第二个参数是可选的,默认是空格,如果设置宽度小于实际宽度则返回源字符串。

zfill():右对齐,左边用0填充,该方法只接收一个参数,用于指定字符串的宽度,如果指定的宽度小于等于字符串的长度,返回字符串本身。


05.字符串的劈分


split():从字符串的左边开始劈分,默认的劈分字符是空格字符串,返回的值都是一个列表。

以通过参数sep指定劈分字符串的劈分符


s1.split(sep='|')

通过参数maxsplit指定劈分字符串时的最大劈分次数,在经过最大次劈分之后,剩余的子串会单独作为一部分。


rsplit():从字符串的右边开始劈分,默认的劈分字符是空格字符串,返回的值都是一个列表。

以通过参数sep指定劈分字符串的劈分符

通过参数maxsplit指定劈分字符串时的最大劈分次数,在经过最大次劈分之后,剩余的子串会单独作为一部分。


06.字符串判断的相关方法


isidentifier():判断指定的字符串是不是合法的字符串(字母,数字,下划线)

isspace():判断指定的字符串是否全部由空白字符串组成(回车、换行、水平制表符)

isalpha():判断指定的字符串是否全部由字母组成

isdecimal():判断指定字符串是否全部由十进制的数字组成

isnumeric():判断指定的字符串是否全部由数字组成

isalnum() :判断指定字符串是否全部由字母和数字组成


07.替换与合并


replace():第一个参数指定被替换的子串,第二个参数指定替换子串的字符串,该方法返回替换后得到的字符串,替换前的字符串不发生变化,调用该方法时可以通过第三个参数指定最大替换次数


s.replace('Python','Java')
  • join():将列表或元组中的字符串合并成一个字符串


'|'.join(lst)


08.字符串的比较操作


  • 运算符 >,>=,<,<=,==,!=
    ==与is的区别:
    ==比较的时value
    is比较的是id是否相等

09.字符串的切片操作


  • 字符串是不可变类型,不具备增、删、改等操作,切片将产生新的对象。
s='Hello,world'
s1=s[:5]
s2=s[6:]
s3="!"
newstr=s1+s2+s3
print(newstr)
print(start:end:step)


10.格式化字符串


  • 格式化字符串的两种方式
    %作占位符


print('我叫%s,今年%d岁',%(name,age))


{}作占位符


11.字符串的编码与解码


  • 编码:将字符串转换为二进制数据(bytes)
s='天涯共此时'
print(s.encode(encoding='GBK'))
不同编码方式占用的字节数不同
  • 解码:将bytes类型的数据转换成字符串类型


bytes.decode(encoding='GBK')
相关文章
|
1天前
|
机器学习/深度学习 数据可视化 数据挖掘
使用Python进行数据分析的入门指南
【9月更文挑战第33天】本文旨在为初学者提供一个关于使用Python进行数据分析的全面概述。我们将从基本的安装和设置开始,逐步介绍数据处理、数据可视化以及机器学习的基本概念和应用。文章将通过实际代码示例来展示如何使用Python及其相关库来解决常见的数据分析问题。
|
7天前
|
Python
Python 编程入门:打造你的第一个程序
【9月更文挑战第27天】编程,就像是在数字世界里绘画。想象一下,你手中的键盘是画笔,屏幕是画布,而代码则是你的颜料。这篇文章将带你走进编程的世界,学习如何使用 Python 这门语言来创建你的第一个程序。我们将从基础的语法开始,逐步深入到条件判断和循环结构,最终完成一个简单的猜数字游戏。无论你是否有编程经验,这里的内容都将为你打开一扇新的大门。
|
7天前
|
人工智能 数据挖掘 开发者
Python编程入门:从零到英雄
【9月更文挑战第27天】本文旨在通过浅显易懂的语言,为初学者介绍Python编程的基础知识和实用技巧。我们将一起探索Python的世界,了解其语法、数据结构,并通过实际示例学习如何编写简单的Python程序。无论你是编程新手,还是希望拓展技能的开发者,这篇文章都将为你打开一扇通往Python编程世界的大门。
|
6天前
|
Java Linux C++
30天拿下Python之基础语法
30天拿下Python之基础语法
12 4
|
6天前
|
Python
? Python 装饰器入门:让代码更灵活和可维护
? Python 装饰器入门:让代码更灵活和可维护
12 4
|
8天前
|
存储 人工智能 数据挖掘
Python编程入门:从基础到实战
【9月更文挑战第26天】 在这篇文章中,我们将一起探索Python编程的奇妙世界。无论你是初学者还是有一定经验的开发者,这篇文章都将为你提供有价值的信息和技巧。我们将从Python的基本语法开始,然后逐步深入到更复杂的主题,如函数、类和模块。最后,我们将通过一个实际的项目来应用我们所学的知识。让我们一起开始这段Python编程之旅吧!
|
6天前
|
数据可视化 Python
使用Python进行数据可视化:从入门到精通
【8月更文挑战第60天】本文是一篇面向初学者的Python数据可视化教程,旨在帮助读者掌握如何使用Python及其强大的库(如Matplotlib和Seaborn)来创建引人入胜的数据可视化。我们将从基础开始,逐步深入,最终达到能够独立完成复杂数据可视化项目的水平。无论你的背景如何,只要你对数据可视化感兴趣,这篇文章都将为你开启一段新的学习之旅。
|
7天前
|
Python
Python 装饰器入门:让代码更灵活和可维护
Python 装饰器入门:让代码更灵活和可维护
12 1
|
9天前
|
设计模式 开发者 Python
Python中的装饰器:从入门到精通
【9月更文挑战第25天】本文深入浅出地介绍了Python装饰器的使用,包括其定义、语法和实际应用。通过实例演示如何利用装饰器增强函数功能,同时探讨了装饰器的高级用法如带参数的装饰器和装饰器嵌套。最后,文章强调了在设计装饰器时应避免的常见陷阱。
|
9天前
|
前端开发 开发者 Python
从零到一:Python Web框架中的模板引擎入门与进阶
在Web开发的广阔世界里,模板引擎是连接后端逻辑与前端展示的重要桥梁。对于Python Web开发者而言,掌握模板引擎的使用是从零到一构建动态网站或应用不可或缺的一步。本文将带你从基础入门到进阶应用,深入了解Python Web框架中的模板引擎。
14 3
下一篇
无影云桌面