04 python基础语法上(行与缩进、字面量、变量、常量、数据类型)

一、行与缩进

        在我们写出第一行程序的时候会发现,为什么结尾没有分号;,这就是python这门语言最大的区别,把这种不符合人类交互正常行为的尽量抛弃掉,我们现在在说话时,也很少使用符号做结尾,说完一句换行就可以了。

        其他语言都会使用{}来表明这是代码块、函数、类、控制逻辑,这种也被python抛弃了,在python里,采用缩进来控制

        而每个条件语句、函数、类等末尾就加个:来表明,这也很像正常的交流,某某说,比如小明说,我们一般就是小明:今天我要暴走了,就OK了,

        如下,缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。一般默认为4个空白,就是一个tab

is_robot = True

if is_robot:
    print("yes, 我是机器人")

运行结果:

如果我们写成这样,将is_robot 修改成False

is_robot = False

if is_robot:
    print("yes, 我是机器人")
print("我会工作")

第一个print语句属于if的范围,而第二个print就不属于,所以只会输出第二个print,第二个print和if是同一层缩进,属于平级。 

二、 字面量、变量、常量

直观看代码,应该可以理解了字面量、常量、变量的区别

Python 中的变量赋值不需要类型声明,使用=号给它赋值,就变成变量了。

print(100)          # 整型字面量
print("I am robot") # 字符串字面量

MAX_SPEED = 120 # 在python里无强制常量,全大写为约定俗成的不可改变的常量(仅提示开发者不应修改)
                # MAX_SPEED,全大写约定为常量,120为整型字面量

current_time = "21:59"  # 存储当前时间 current_time 为变量, 21:59 为字符串字面量

 1、字面量(Literals)

        定义:直接在代码中写入的固定值,无需计算或赋值即可使用。

                一般出现在=号的右边或者print语句中。

        常见类型

        我们先了解整型、浮点、字符串、布尔、空值这几种,其他的后续课程会逐步介绍。

  1. 整型42-5
  2. 浮点型3.14-0.001
  3. 字符串"Hello"'Python'(支持三引号多行字符串)
  4. 布尔型TrueFalse
  5. 空值None
  6. 容器类
    • 列表:[1, 2, 3]
    • 元组:(4, 5)
    • 字典:{"name": "Alice"}
    • 集合:{1, 2, 3}

         示例:

print(100)          # 整型字面量 
print("2025-03-09") # 字符串字面量(当前日期)

2、变量(Variables) 

        定义:用于存储数据的标识符,通过赋值(=)动态绑定值。
        特点

                动态类型:变量类型可随时改变,如 x = 10 → x = "text"

                命名规则

                        以字母或下划线开头,区分大小写。

                        避免关键字(如 iffor)。

                作用域

                        局部变量(函数内定义)

                        全局变量(函数外定义,需用 global 关键字修改)

                        非局部变量(嵌套函数中用 nonlocal 声明)

                示例:

current_time = "21:59"  # 存储当前时间 
current_time = None     # 变量类型可动态改变 

3、常量(Constants)

        定义:约定俗成的“不可变”值,但Python无强制常量机制。
        实现方式

                全大写命名:如 MAX_SPEED = 120(仅提示开发者不应修改)。

                模块级常量:例如 math.pi(通过模块提供固定值)。

                枚举类

from enum import Enum 
class Color(Enum):
    RED = 1 
    GREEN = 2 

        注意:常量实际仍可被修改,只是一种约定俗成,需依赖代码规范。 

三、注释

        不参与代码运行,而只是给开发者看,了解程序功能,声音作者,用途等的说明文字

        1、通过#号

# 这是一个单行注释

        2、通过 三引号"“”“”"来添加多行注释

"""
这是一个多行注释
需要三个引号
与代码相区分
"""

 这是一个没有任何注释的代码


print(100)        
print("I am robot") 

MAX_SPEED = 120 
               

current_time = "21:59" 

这是一个有注释的代码

"""
这是一个演示程序
演示字面量、常量、变量
print进行输出
"""

print(100)          # 整型字面量
print("I am robot") # 字符串字面量

MAX_SPEED = 120 # 在python里无强制常量,全大写为约定俗成的不可改变的常量(仅提示开发者不应修改)
                # MAX_SPEED,全大写约定为常量,120为整型字面量

current_time = "21:59"  # 存储当前时间 current_time 为变量, 21:59 为字符串字面量

 运行结果一样,有注释是不是更容易理解代码呢?

四、数据类型

1、基本数据类型

Python 内置的基础数据类型,直接表示单一数据,先了解基本数据类型即可,其他类型后续课程会逐步讲解。

整型(int

  • 特点:无大小限制,支持十进制、二进制(0b101)、八进制(0o77)、十六进制(0xFF)。
  • 示例age = 30

浮点型(float

  • 特点:带小数点的数值,支持科学计数法(3e5)。
  • 示例temperature = 36.5

布尔型(bool

  • 特点:仅 True 或 False,常用于逻辑判断。
  • 示例is_valid = True

字符串(str

  • 特点:不可变序列,支持单引号、双引号、三引号(多行字符串)。
  • 示例:
    date = "2025-03-09"  # 当前日期  
    message = '''今日任务:  
    1. 完成报告  
    2. 提交审核'''  

空值(NoneType

                1.特点:表示无数据,唯一值为 None

                2.示例result = None

 2、容器类型

用于存储多个数据的复合类型。

列表(list

  • 特点:有序、可变,元素可重复。
  • 示例
    tasks = ["会议", "编程", "健身"]  
    tasks.append("阅读")  # 动态修改  

元组(tuple

  • 特点:有序、不可变,适用于固定数据(如坐标)。
  • 示例point = (3, 5)

字典(dict

  • 特点:键值对集合,键唯一且不可变(如字符串、数字)。
  • 示例
    user = {"name": "Alice", "age": 28, "join_date": "2025-03-09"}  

集合(set

  • 特点:无序、元素唯一,用于去重或集合运算(交集、并集)。
  • 示例unique_ids = {101, 102, 103}

 3、其他内置类型

Python 额外支持的实用类型。

字节(bytes

  • 特点:不可变二进制序列,常用于文件读写。
  • 示例data = b'\x00\x01\x02'

字节数组(bytearray

  • 特点:可变版本的 bytes

范围(range

  • 特点:生成连续整数序列,常用于循环。
  • 示例nums = range(1, 6) # 1,2,3,4,5

枚举(Enum

  • 特点:定义命名常量集合。
  • 示例
    from enum import Enum  
    class Status(Enum):  
        PENDING = 1  
        APPROVED = 2  

 五、类型检查

        使用 type() 或 isinstance()

print(type("我是机器人"))
print(type(389))
print(type(3.14))
print(type(None))
print(type(True))

num = 2025
print(isinstance(num, int))      # True
date_str = "2025-03-09"
print(isinstance(date_str, int)) # False

        输出结果为:

 

       可以用一个变量存储类型信息

var_type = type("我是机器人")
print(var_type)
var_type = type(389)
print(var_type)
var_type = type(3.14)
print(var_type)
var_type = type(None)
print(var_type)
var_type = type(True)
print(var_type)

        结果为:

 变量有没有类型?

        没有。在python里,变量不需要定义类型,存储了啥就是啥。

        字符串变量表示存储了字符串,而不是表示变量就是字符串        

六、类型转换 

常见的转换语句:

int(x)将x转换为一个整数
float(x)将x转换为一个浮点数
str(x)将x转换为字符串

 示例:

# 将数字类型转换成字符串
num_str = str(389)
print(type(num_str), num_str)

float_str = str(3.14)
print(type(float_str), float_str)

# 将字符串转换成数字
number = int("756")
print(type(number), number)

number2 = float("5.6789")
print(type(number2), number2)

运行结果: 

注意1:不能将非数字的字符串转成数字,比如

# 不能将非数字的字符串转成数字
number = int("hello")
print(type(number), number)

 运行报ValueError的错误:

注意2:浮点数转换成整数会丢失小数部分

# 浮点数转换成整数会丢失小数部分
number = int(5.6789)
print(type(number), number)

运行结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爬呀爬的水滴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值