Python中的变量和简单的数据类型

与其他的编程语言声明变量的方式差别不大,这里Python语言是强类型,即变量的数据类型是由当前引用的数据对象来决定。

变量

  • 变量声明方式:

    message = "Hello Python world!"
    

    这里就是声明了一个字符串变量message。其类型是由=后面的数据对象来决定。

    我们可以通过type函数来观察message变量的数据类型。

    message = "Hello Python world!"
    print(message)
    print(type(message))
    

    运行结果:

    如果我们后续变更了message变量的值,会展示什么样的结果

    message = "Hello Python world!"
    print(message)
    print(type(message))
    message = 1
    print(message)
    print(type(message))
    

    运行结果:

    我们可以观察到不仅仅变量的值变了,其数据类型也发生了变化。

    Python中还可以同时对多个变量进行赋值:

    x, y, z = 0, "str", True
    print(x)
    print(y)
    print(z)
    

    运行结果:

  • 变量命名规则:(在python的命名规范中一般使用小写字母单词加下划线分隔的方式,eg:length_of_name)

    • 只能包含字母、数字和下划线,且只能以字母或者下划线打头。
    • 不要将Python的关键字作为变量名称。

常量

常量是在程序的整个生命周期内都保持不变的变量。而在Python中并没有严格的常量类型,而是根据程序员对变量命名方式的不同进行区分。

字符串

字符串就是一系列字符,用单引号/双引号引起的。

这种灵活性可以方便字符串中使用单引号、撇号和双引号

'I told my friend, "Python is my favorite language!"'
"The language 'Python' is named after Monty Python, not the snake."
"One of Python's strengths is its diverse and supportive community."

同时如果之前了解过其他编程语言,我们可以知道,在字符串中还可以添加转义字符来定义字符串

"Country: ntChina ntAmerica ntAustralia"
  • 使用变量来定义字符串

    first_name = "James"
    last_name = "Bob"
    full_name = f"{first_name} {last_name}"
    print(full_name)
    

    执行结果:

    通过上述例子可以看到,我们可以通过使用已有的字符串变量来定义一个新的字符串,可以现在左引号前面加上f,再将要引入的变量放在大括号当中。这种字符串称为**f字符串**。

    user_name = "name=%s"%("James")
    user_info = "name=%s, age=%d"%("James", 14)
    print(user_name)
    print(user_info)
    

    执行结果:

    我们还可以通过%的方式定义新的字符串。其中%s%d被称为占位符。主要的占位符包括:

    符号说明
    %s对象str方法的返回值(一般选择这种方式)
    %r对象的repr方法的返回值
    %d%i数字格式化
    %f浮点数格式化
    %.nf浮点数保留n位小数
    %x%X数字格式化位16进制(x,X大小写)
    %c格式化字符及其ASCII码
    %e科学计数法标识的浮点数(e小写)
  • 字符串分类:

    • 普通字符串

    • 原字符串:使用r开头定义的字符串

      s = r'cc++Python'
      #输出展示结果:cc++Python
      
    • Byte类型:b开头

  • 编码格式:

    可以通过使用encode()decode()方法实现对字符串的编码和解码,python的默认编码规则是unicode,我们通过某一编码规则编码的时候,解码也需要使用相同的编码规则,否则会出现乱码的情况。

  • 字符串常用的方法:

    • title():将每个单词的首字母变成大些
    • upper():将字符串中的所有字母转换为大写
    • lower():将字符串中的所有字母转换为小写
    • capitalize():将字符串首字母大写
    • swpacase():将字符串中的大小写交换
    • rstrip(char=None……):将字符串右端的chars字符集合(默认为空字符)删除
    • lstrip(char=None……):将字符串左端的chars字符集合(默认为空字符)删除
    • strip(char=None……):将字符串两端的chars字符集合(默认为空字符)删除
    • removeprefix({prefix}):删除字符串中的前缀
    • removesuffix({suffix}):删除字符串中的后缀
    • find({sub}, {start}, {end}):从前向后查找,返回sub在字符串中第一次出现的位置,不存在返回-1,startend限定查找范围。
    • rfind({sub}, {start}, {end}):从后向前查找,功能同find()
    • index({sub}, {start}, {end}):功能同find(),不同点是sub在字符串当中不存在的时候报异常。
    • count({sub}, {start}, {end}):返回sub在字符串中出现次数。
    • replace({old}, {new}, count):将old使用new替换,count是替换的数量。
    • split(sep=None, maxsplit=-1):从前向后通过sep对字符串切分,返回切分子串组成的列表。sep默认所有空字符(包括空格、回车、制表符等),maxsplit默认切分所有。
    • rsplit(sep=None, maxsplit=-1):从后向前通过sep对字符串切分,返回切分子串组成的列表。sep默认所有空字符(包括空格、回车、制表符等),maxsplit默认切分所有。
    • join({iterable}):使用字符串(这时字符串是作为连接符使用)将迭代对象中的元素(字符串类型)拼接成新的字符串。
    • startswith({prefix}, {start}, {end}):字符串以指定子串开头返回True,否则返回False。prefix是子串,start是起始索引,end是结束索引。
    • endswith({suffix}, {start}, {end}):字符串以指定子串开头返回True,否则返回False。suffix是子串,start是起始索引,end是结束索引。
    • isalpha():判断字符串中是否只由字母组成
    • isdigit():判断字符串是否只由数字组成
    • isupper()/islower():判断字符串是否所有字符都是大/小写
    • isspace():判断字符串中所有字符是否都是空格。
    • istitle():判断字符串中所有单词拼写是否首字母为大写,其他均为小写。

数包含两种基本数据类型:

  • 整数:整数可以执行加(+)、减(-)、乘(*)、除(/)、乘方(**)运算。
  • 浮点数:因为计算机存储数据是使用二进制的方式进行存储,但是对于无法被 2 的幂整除的十进制小数运算的时候就有可能产生尾差,最为经典的就是0.2 + 0.1

需要注意的是将任意两个数相除,结果总是浮点数,即便这两个数都是整数且能整除。

在python中无论是哪种了算术运算,只要是有操作数是浮点数,默认得到的就总是浮点数。

注释

Python中使用#来标识注释行。

本站提供的所有下载资源均来自互联网,仅提供学习交流使用,版权归原作者所有。如需商业使用,请联系原作者获得授权。 如您发现有涉嫌侵权的内容,请联系我们 邮箱:alixiixcom@163.com