Python03--python中的标识符和变量以及数据类型

目录

一,标识符

 二,数据类型

1,数字类型

 2,字符串类型

 3,列表类型

 4,元组类型

5,集合类型

6,字典类型


一,标识符

因为我们在编写程序的时候会用到各种各样的数据,如字符串类型,整型,布尔型等。因此计算机语言中都会有标识符的存在,标识符就是用来表示我们的数据的。但是对于标识符来说,不能和我们计算机语言上的关键字重名,不然就会和我们的关键字冲突。所以在命令标识符的时候应尽量避免和关键字重名,我们先看一下python中的关键字(不需要花时间记,以后会用到):

无论是python,Java,还是c,它们的标识符命名规范都是一样的:

  1. 只能由字母,数字和下划线组成,且不能以数字开头。
  2. 命令时需要能够做到见名知义,例如我们使用标识符age表示年龄。
  3. 变量名,函数名,模块名可以使用全小写的英文字母组成,常量名推荐使用全大写的英文字母,类名首字母推荐大写。如果由多个单词组成,那么我们可以使用下划线连接这些单词。

1, 标识符不能以数字开头

 2,标识符需要做到见名知义

 3,标识符对应字母组成

if __name__ == '__main__':
    age=20  # 变量
    NAME="张三"  # 常量
    age_school=100  # 由多个单词组成的变量名
    NAME_SCHOOL="su'ling'shi"  # 由多个单词组成的常量名

class ClassDemo:
    def __init__(self,name,age):
        self.name=name
        self.age=age

 二,数据类型

对于python来说,声明一个数据类型时,不需要在标识符前面加上(显式指定)该数据的类型,因为python是动态语言,可以自动识别我们的数据类型。所以习惯了Java的数据类型命名的会觉得用python来进行数据的声明和使用超级简单和方便,也会爱上这一门语言。

1,数字类型

数字类型有整型,浮点型,布尔型,复数类型。

在python中的数据类型和Java中的数据类型相比少了char字符型数。多了复数类型:复数就是我们上学时学的数据类型,但是和我们数学上学的不一样,在python的数据表示上,虚部单位不是i,而是j,以下就是数字类型数据的使用:

if __name__ == '__main__':
    integer_=20  # 整型
    float_=20.2  # 浮点型
    boolean_=False  # 布尔型
    complex_=20+1j  # 复述类型
    print(complex_.real)  # 打印复数的实数部分
    print(complex_.imag)  # 打印复数的虚数部分

 从上图我们可以知道,如果我们想要打印出来复数类型的实数部分,我们可以使用“复数类型.real”来获取到。如果想要获取到虚数部分则使用“复数类型.image”。

在声明数据类型时为了防止我们的标识符与关键字冲突,我都在后面加上了下划线。

 2,字符串类型

字符串的数据使用和Java相比,可以使用一对单引号,一对双引号,三对单引号。甚至是三对双引号(在python中不止可以用于注释还可以用于包裹我们的字符串类型数据):

if __name__ == '__main__':
    string1='hei,man'
    string2="you are handsome"
    string3='''keep  coding'''
    string4="""day day up"""
    print(string1)
    print(string2)
    print(string3)
    print(string4)

 关于字符串的操作有很多,因为字符串数据类型可以说,无论是生活还是在编码的时候,用得最多的数据类型。我们先来了解python中关于字符串操作的两个函数:

  1. replace(old  string,new  string):可以替换字符串中指定字符串的内容
  2. split(split content):以字符串中指定字符或字符串来将我们的字符串分开,并放入列表数据据 类型中。
if __name__ == '__main__':
    string1 = 'abcdddd'
    string2=string1.replace('dddd','defg')
    print(f"replace后的string1:{string2}")
    string3="1 2 3 4 5"
    """ 使用split函数对string3进行按空格分割处理"""
    string4=string3.split()
    print(f"使用split后的string4:{string4}")

 值得注意的是,字符串类型的数据是不能进行修改的,因此我们在对一个字符串修改后,需要将修改后的字符串赋值给另外一个字符串类型的变量存储起来。不然即使我们对字符串的处理玩出花来,但是没有赋值给其他变量,原来的字符串也不会有丝毫的改变。

 3,列表类型

列表是使用一对中括号括起来的数据,我们可以往列表中放置任意类型的数据(列表中的元素应该使用逗号,隔开),并且可以很方便地对列表中的数据进行增删改查等操作。

if __name__ == '__main__':
  list1=[1,2.2,False,2+3j,'hei man',[1,2,8]]  # 列表数据
  list2=[102,2,1,4,9]  # 含有数字类型的列表数据
  list2.sort()
  print(f"list2列表排序后:{list2}")  # 列表排序
  print(f"取出list1列表中的第二个元素:{list1[1]}")  # 获取列表中的第二个元素
  list1[1]="嘿,man"  # 修改列表list1中的第二个元素为字符串”嘿,man”
  list1.append(list2)  # 向list1列表中添加list2列表中的数据
  print(f"list1通过append方法将list2中的元素添加进来:{list1}")

 列表也可以进行反转,即将本来位于列表中第一位的元素放置在列表的最后一位,第二位放到倒数第二位,以此类推,最后一位放置到列表中的第一位。一般与列表的排序sort连用以达到使列表排序后的结果是从大到小。

  list2=[102,2,1,4,9]  # 含有数字类型的列表数据
  list2.sort()  # 列表排序
  print(f"list2列表排序后:{list2}")
  list2.reverse()  # 列表反转
  print(f"list2列表翻转后:{list2}")

列表中还有remove函数可以用来删除指定的元素:

 4,元组类型

 元组的数据使用小括号()包裹。元组类型和列表相似,也是可以用于存放任意类型的数据,它既然和列表相似,那么它存在的必要性在哪?其实,对于合理的东西来说,因为合理所以存在。因为列表中的数据存放进去之后还可以进行修改排序等操作,经过修改后的数据可以说已经不是原来的数据了。如果有需求说找一个数据类型来存放我们的数据(含有多种数据类型)并且后期不可以修改的话,非元组类型不可。

  tuple1=(1,3.141,True,2+3j,[1,4,9],(3,8))  # 存放多种数据类型的元组
  print(tuple1[1])
  tuple1[1]=False
  tuple2=(1,8,10,2)
  print(tuple1)

如上,我们可以看到在将元组中的第二个元素进行修改并运行程序时,程序出现了报错,显示我们的元组类型不支持元素更改。

5,集合类型

接下来我们再去认识一个更加特别的数据类型,为什么说它更加特别?因为在它里面的元素都是独一无二的,如果我们想要向集合里面添加集合中已经有的数据时,是根本做不到的。集合使用花括号{}来包裹集合元素。

 值得注意的是集合不像列表和元组那样可以存放列表,元组这样的数据类型,其实想想也是能够说得通的,就是我们的元组,列表里面可以存放的数据类型是可以重复的,因此可能会有和我们的集合中的数据相同的部分。

if __name__ == '__main__':
  set1={1,2.2,True,2+3j}
  set2={6,1}
  set1.add(3)
  set1.add(1)  # 向集合set1添加整型数据1
  print(f"1,向set1集合添加没有的数据3和已经存在的数据1后:{set1}")
  set1.pop()  # 删除集合set1第一个元素
  print(f"2,集合set1使用pop后:{set1}")
  set1.union(set2)  # 合并两个集合
  print(f"3,合并后的集合:{set1}")
  set2.clear()  # 清空集合set2
  print(f"4,clear清空后的集合:{set2}")

 集合无论是添加add还是删除pop函数,都是在第一个位置的元素进行,这一点就与列表不同,列表的appendpop函数都是操作列表的最后一位元素

在集合中union函数和MySQL多表查询中的union语句类似,都是并上的意思,用于将两边的数据进行合并。mysql中是直接加在一起。而对于集合来说,因为它里面的元素不允许重复,因此如果两边数据如果有重复的地方,那么合并后重复的数据不会出现两次,而是之后一次。

6,字典类型

字典类型的数据被花括号{}包围。字典是一个很形象的数据类型,它就和我们生活中使用的字典一样,都是找到了一个关键字key,然后再拿着这个关键字去找相关的元素,因为我们需要通过key得到我们的value值,因此key值就不会有重复。

if __name__ == '__main__':
  dict1={"id":1,"name":"常山赵子龙"}
  print(dict1)
  for i in dict1.keys():  # 获取字典中的键
    print(i)
  for i in dict1.values():  # 获取字典中的值
    print(i)
  for i in dict1.items():  # 获取字典中键:值
    print(i)
  dict1.pop("id")  # 删除字典中对应的键值
  dict1.clear()  # 清空字典
  print(dict1)

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值