Python基础(变量及其命名规范)

简介: Python基础(变量及其命名规范)

1 python变量类型及其详解

变量是每一门编程语言必不可少的,相较于C语言或者Java,python的变量定义比较简单,不需要在变量名前面事先声明变量的类型,只需要写出 变量名=变量值 即可,python解释器会自动识别并将变量名设定为该变量类型。

每一门语言中都有不同类型的变量,python也不例外,提供了6种数据类型,分别是数字(Number)、字符串(String)、列表(List)、元组(Tuple)、集合(Set)、字典(Dictionary),下面来详细的介绍一下:

1.1 数字

它支持4种类型,分别是整数、浮点数、复数、布尔类型

  • 整数的定义非常简单,相当于C语言的int类型,定义方法如下:
a = 10  # 定义了一个整型变量a,其值为10
  • 浮点数也就是小数,但是与C或者Java不一样,python不需要事先说明是长整形还是短整型,定义方法如下
b = 3.1415926
  • 复数用的比较少,它分为实部和虚部,在python中,实部用数字表示,虚部用数字+j来表示,定义方法如下:
c = 3+4j  # 定义了一个复数c,实部为3,虚部为4
  • 布尔类型用来判断真假,只有True、False两个取值,定义方法如下:
d = True  # 定义了一个布尔类型的变量d,取值为“真”

1.2 序列

1.2.1 字符串

字符串在python中是比较方便定义和使用的,它是描述文本的一种数据类型,可以由任意数量的字符组成。其定义和使用需要遵循以下规则:

  • 在python的字符串中,可以使用单引号或双引号来定义。例如:
str1 = 'I am a student.'
str2 = "I am a student too."
  • 如果一个字符串包含一个单引号,应该使用双引号来定义,例如:
str3 = "It's a big city!"
  • 当一个字符串包含双引号时,要使用单引号来定义,例如:
str4 = 'When I was doing homework, "I love you!", she said.'
  • 反斜杠(\)在python字符串中表示“转义字符”,例如:
str5 = 'It\'s a big city!'  # 输出It's a big city!
  • 对于转义字符,也可以通过在第一个引号前添加字母r来使用原始字符串,例如:
str6 = r'D:\nBaiduNetdiskDownload'  # 输出D:\nBaiduNetdiskDownload
  • 多行字符串,也可以作为多行注释,使用三对单引号来创建
'''
这是一个多行字符串
这是一个多行字符串
'''

1.2.2 列表

其实,列表、元组、集合、字典,都是python的数据容器,下面来介绍其中之一——列表(List)

列表相当于C语言中的数组,是基于链表这个数据结构实现的,但是比它的定义要简单,而且python还提供了对列表对象的各种操作方法。python列表规范如下:

  • 列表内的每一个数据,称之为元素
  • 以 [] 作为标识
  • 列表内每一个元素之间用, 逗号隔开
  • 一个列表中,可定义单个、多个或者嵌套类型的数据

创建列表的方法也有很多,例如:

  • 直接在方括号内放入元素定义列表
list1 = [1, 2, 3, 4]
list2 = ['IT', 123, True]
list3 = [[1, 2, 3], [4, 5, 6]]
list4 = []  # 也可直接定义空链表

列表作为容器的一种,当然在应用方面有较多的需要,比如元素的选取方式,决定了代码的书写效率。所以python提供了多种多样的访问方式,后面的元组、集合、字典也不例外。

  • 首先,和C、Java一样,python当然也可以通过下标来访问,在这里就不多说了。其次,列表等容器在for循环中运用的比较广泛,使用方法如下:
list5 = [1, 2, 3, 4, 5, 6]
for num in list5:
  print(num)

1.2.3 元组

与列表不同,元组一经定义不可修改,但元组同列表一样,都是可以封装多个、不同类型的元素在内。所以,当我们需要在程序内封装数据,又不希望封装的数据被篡改,那么元组就非常合适了。

定义元组需用小括号,且使用逗号隔开各个数据,同时,数据可以是不同的数据类型。

  • 创建元组的方式也和列表类似:
t1 = (1, 2, 3, 4)
t2 = ('IT', 123, True)
t3 = ((1, 2, 3), (4, 5, 6))

python也对于元组提供了多个方法来实现相关的操作,比如index()用于查找某个数据,如果数据存在返回对应的下标,否则报错;count()用于统计某个数据在当前元组出现的次数;len()用于统计元组内的元素个数等。

1.2.4 序列的切片操作

首先,什么是序列?

序列是指内容连续、有序,可使用下标索引的一类数据容器

列表、元组、字符串,均可以可以视为序列。

什么是切片呢?

切片是指从一个序列中,取出一个子序列

在python中,切片使用的语法是:序列[起始下标:结束下标:步长],表示从序列中,从指定位置开始,依次取出元素,到指定位置结束,得到一个新序列

切片操作需要注意的是:

  1. 起始下标表示从何处开始,可以留空,留空视作从头开始
  2. 结束下标不含)表示何处结束,可以留空,留空视作截取到结尾
  3. 步长表示,依次取元素的间隔

对于步长,有很多的编程技巧:

  • 步长1表示,一个个取元素
  • 步长2表示,每次跳过1个元素取
  • 步长N表示,每次跳过N-1个元素取
  • 步长为负数表示反向取(注意,起始下标和结束下标也要反向标记

序列切片操作的演示(正向操作):

my_list = [1, 2, 3, 4, 5]
new_list = my_list[1:4] # 下标1开始,下标4(不含)结束,步长1
print(new_list)   # 结果:[2, 3, 4]
my_tuple = (1, 2, 3, 4, 5)
new_tuple = my_tuple[:] # 从头开始,到最后结束,步长1
print(new_tuple)    # 结果:(1, 2, 3, 4, 5)
my_list = [1, 2, 3, 4, 5]
new_list = my_list[::2]   # 从头开始,到最后结束,步长2
print(new_list)   # 结果:[1, 3, 5]
my_str = "12345"
new_str = my_str[:4:2]  # 从头开始,到下标4(不含)结束,步长2
print(new_str)    # 结果:"13"

序列切片操作的演示(反向操作):

my_str = "12345"
new_str = my_str[::-1]  # 从头(最后)开始,到尾结束,步长-1(倒序)
print(new_str)    # 结果:"54321"
my_list = [1, 2, 3, 4, 5]
new_list = my_list[3:1:-1]  # 从下标3开始,到下标1(不含)结束,步长-1(倒序)
print(new_list)   # 结果:[4, 3]
my_tuple = (1, 2, 3, 4, 5)
new_tuple = my_tuple[:1:-2]   # 从头(最后)开始,到下标1(不含)结束,步长-2(倒序)
print(new_tuple)    # 结果:(5, 3)

1.3 集合

与上面三个类似,集合也是python提供的一个数据容器,但是它有着特殊的功能,就是去重操作。无论是列表、元组还是字符串,都允许相同元素重复出现,但是对于集合,当要插入的元素在里面已经出现时,就不能重复插入了

集合可以使用大括号 { } 或者 set() 函数创建

注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

  • 去重功能的展示:
s1 = {1, 2, 3, 4, 4, 3, 2, 1}
print(s1)   # {1, 2, 3, 4}
  • 集合存储元素是无序的:
a = set('abcdefg')
b = set('abc')
print(a)  # {'f', 'd', 'e', 'b', 'g', 'c', 'a'}
print(b)  # {'b', 'c', 'a'}
  • 集合之间可以进行一些集合操作,例如交并差补
print(a - b)  # {'d', 'g', 'f', 'e'}  
print(a ^ b)  # {'e', 'f', 'd', 'g'}
print(a & b)  # {'b', 'c', 'a'}
print(a | b)  # {'b', 'e', 'f', 'd', 'g', 'c', 'a'}

1.4 字典

在爬虫操作中,很多相应得到的响应体的部分都由字典组成,所以它在爬虫的开发中尤为重要。同时,它还可以与json对象相互转换,后面的文章会做专门的介绍。

字典与集合一样,都是用{}来表示,但是不同的是字典每个元素有两个值,中间用冒号隔开,前面的叫做key,后面的叫做value。语法如下:

  • 使用{ }存储原始,每一个元素是一个键值对
  • 每一个键值对包含Key和Value(用冒号分隔)
  • 键值对之间使用逗号分隔
  • Key和Value可以是任意类型的数据key不可为字典
  • Key不可重复,重复会对原有数据覆盖

字典的定义可以使用以下形式:

dict = {"nane": "张三", "age": 18, "sex": "男"}
dict1 = {}  # 定义了一个空字典

同时,字典还可以嵌套使用,但key不可以为字典类型,例如:

stuScore = {"张三" : {"语文" : 89, "数学" : 78, "英语" : 77}, "李四" : {"语文" : 69, "数学" : 94, "英语" : 79}}

当需要获取字典中的内容时,可以利用key中的值来取value,例如:

print(stuScore["张三"]) # {'语文': 89, '数学': 78, '英语': 77}

除此之外,还可以对字典进行增删改操作:

dict = {"nane": "张三", "age": 18, "sex": "男"}  # 定义了一个空字典
dict["score"] = 100 # 增加元素
del dict["name"]  # 删除元素
dict["name"]="老六" # 修改元素

对于字典,python提供的操作有:

  • len(字典):用于返回字典中键值对个数
  • 字典.pop(Key):用于取出Key对应的Value并在字典内删除此Key的键值对
  • 字典.clear():清空字典
  • 字典.keys():获取字典的全部Key,可用于for循环遍历字典

其中的keys,values,items方法,可用于字典的遍历

# 1.使用keys
for i in dict.keys():
    print(i)
# 2.使用values
for i in dict.values():
    print(i)
# 3.使用items
for i in dict.items():
    print(i)
# 4.可使用items获取key和value
for key,value in dict.items():
    print(key,value)

1.5 数据容器的比较

列表 元组 字符串 集合 字典
元素类型 任意 任意 仅字符 任意 Key除字典外任意, Value任意
下标索引 支持 支持 支持 不支持 不支持
重复元素 支持 支持 支持 不支持 不支持
可修改性 支持 不支持 不支持 支持 支持
数据有序
使用场景 可修改、可重复的一批数据记录 不可修改、可重复的一批数据记录 一串字符的记录 不可重复的数据记录 以Key检索Value的数据记录

2 python变量命名规范

首先,变量的命名规则与C、Java等语言一样:

  1. 只能由字母、数字、下划线组成
  2. 不能是数字开头,比如1s就是错误的变量名
  3. 不能是python内置关键字,比如forwhile
  4. 严格区分大小写,比如Stustu就不是一个变量

其次,变量的命名习惯一般都用小驼峰命名法,即除了第一个单词首字母小写,其余单词首字母大写,比如pageRank

最后,还要注意的一点是:变量的命名要见文知义,比如说姓名这个变量名就要写成name或者my_name等,如果写成a, b, c这种的就会影响项目的开发。

相关文章
|
5月前
|
索引 Python
Python的变量和简单类型
本文介绍了Python中变量命名规则、常用变量类型及字符串操作。变量命名需遵循字母、数字和下划线组合,不能以数字开头且不可与关键字冲突。字符串支持单引号、双引号或三引号定义,涵盖基本输出、转义字符、索引、拼接等操作。此外,还详细解析了字符串方法如`islower()`、`upper()`、`count()`等,帮助理解字符串处理技巧。
116 15
|
5月前
|
人工智能 Python
[oeasy]python082_变量部分总结_variable_summary
本文介绍了变量的定义、声明、赋值及删除操作,以及Python中的命名规则和常见数据类型。通过示例讲解了字符串与整型的基本用法、类型转换方法和加法运算的区别。此外,还涉及异常处理(try-except)、模块导入(如math和random)及随机数生成等内容。最后总结了实验要点,包括捕获异常、进制转化、变量类型及其相互转换,并简述了编程中AI辅助的应用策略,强调明确目标、分步实施和逐步巩固的重要性。更多资源可在蓝桥、GitHub和Gitee获取。
232 97
|
5月前
|
存储 程序员 Python
Python 变量和简单数据类型
本文介绍了 Python 编程的基础知识,从创建第一个 Python 文件 `hello_world.py` 开始,讲解了 Python 文件的运行机制及解释器的作用。接着深入探讨了变量的定义、命名规则和使用方法,并通过示例说明如何修改变量值。同时,文章详细解析了字符串的操作,包括大小写转换、变量插入及空白字符处理等技巧。此外,还涵盖了数字运算(整数与浮点数)、常量定义以及注释的使用。最后引用了《Python 之禅》,强调代码设计的美学原则和哲学思想。适合初学者快速掌握 Python 基础语法和编程理念。
|
7月前
|
存储 Linux iOS开发
Python入门:2.注释与变量的全面解析
在学习Python编程的过程中,注释和变量是必须掌握的两个基础概念。注释帮助我们理解代码的意图,而变量则是用于存储和操作数据的核心工具。熟练掌握这两者,不仅能提高代码的可读性和维护性,还能为后续学习复杂编程概念打下坚实的基础。
Python入门:2.注释与变量的全面解析
|
6月前
|
Python
[oeasy]python073_下划线在python里是什么含义_内部变量_私有变量_系统变量
本文回顾了Python中从模块导入变量和函数的方式,重点讨论了避免本地变量名冲突(local name clashes)的方法。通过`from module import variable as alias`可以为导入的变量重命名,防止冲突。根据PEP8规范,建议避免使用`from module import *`,因为它会导入模块中所有非下划线开头的变量,容易引发冲突。下划线在变量命名中有特殊含义:单个前导下划线表示内部变量,后置下划线用于避免与关键字冲突,双下划线前后包围表示系统变量。总结了下划线的不同用法及其作用。下次将继续探讨更实用的编程技巧。
93 3
|
9月前
|
Python
[oeasy]python050_如何删除变量_del_delete_variable
本文介绍了Python中如何删除变量,通过`del`关键字实现。首先回顾了变量的声明与赋值,说明变量在声明前是不存在的,通过声明赋予其生命和初始值。使用`locals()`函数可查看当前作用域内的所有本地变量。进一步探讨了变量的生命周期,包括自然死亡(程序结束时自动释放)和手动删除(使用`del`关键字)。最后指出,删除后的变量将无法在当前作用域中被访问,并提供了相关示例代码及图像辅助理解。
190 68
|
7月前
|
存储 Python 容器
python之变量的使用
Python 中变量是对象的引用,赋值即为指向内存中对象。创建对象时,解释器分配内存,引用计数管理内存回收。Python 是动态类型语言,变量类型在运行时确定。对象分为可变与不可变,前者可修改内部状态,后者则不行。命名空间管理变量作用域,确保不同区域的变量独立。
175 11
|
8月前
|
人工智能 Unix Java
[oeasy]python059变量命名有什么规则_惯用法_蛇形命名法_name_convention_snake
本文探讨了Python中变量命名的几种常见方式,包括汉语拼音变量名、蛇形命名法(snake_case)和驼峰命名法(CamelCase)。回顾上次内容,我们主要讨论了使用下划线替代空格以提高代码可读性。实际编程中,当变量名由多个单词组成时,合理的命名惯例变得尤为重要。
332 9
|
9月前
|
Shell Python
[oeasy]python049_[词根溯源]locals_现在都定义了哪些变量
本文介绍了Python中`locals()`函数的使用方法及其在调试中的作用。通过回顾变量赋值、连等赋值、解包赋值等内容,文章详细解释了如何利用`locals()`函数查看当前作用域内的本地变量,并探讨了变量声明前后以及导入模块对本地变量的影响。最后,文章还涉及了一些与“local”相关的英语词汇,如`locate`、`allocate`等,帮助读者更好地理解“本地”概念在编程及日常生活中的应用。
99 9
|
10月前
|
Python
Python三引号用法与变量详解
本文详细介绍了Python中三引号(`"""` 或 `'''`)的用法,包括其基本功能、如何在多行字符串中使用变量(如f-string、str.format()和%操作符),以及实际应用示例,帮助读者更好地理解和运用这一强大工具。
901 2

推荐镜像

更多