添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
1




    

2
# 使用#的单行注释
print("Hello, World!")

多行注释:使用三个单引号 或 双引号

1
2
3
4
5
6
7
8
9
"""
使用三个双引号的
多行注释
"""

'''
使用三个单引号的
多行注释
'''

Hello World

# coding=utf-8 用于声明python源文件的编码格式。因为只有声明了文件的编码格式,python解释器才知道使用何种方式对源文件进行解码。由于python 3默认源文件编码采用的是utf-8格式。故当源文件使用utf-8编码时,上述文件编码格式声明可以省略

1
2
3
4
5
# coding=utf-8

# 打印消息,print默认会在末尾添加换行符
print("Hello, World!")
print("I'm Aaron")

变量类型

Numbers 数字

Python 3的数字类型具体有:int整型、float浮点型、bool布尔型、complex复数。特别地:

  • Python 2中有int、long类型。而在Python 3没有long类型,且对int类型没有大小限制。故可以直接当作long类型使用
  • Python 3中, bool是int的子类。故True、False可以和数字进行运算,分别代表1、0
  • 1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    # int 整型
    num1 = 24
    num2 = 2

    # float 浮点数
    num3 = 2.0
    num4 = 1.23

    # bool布尔型
    b1 = True
    b2 = False

    # 无论是整数、浮点数,均可用下划线按任意位数进行划分。以便于阅读
    apple_count = 1_0000_000
    orange_count = 22_2
    apple_price = 3.20_21
    orange_price = 89_123.22

    常见的数学运算符如下:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    num1 = 24  # int 整型
    num2 = 2 # int 整型
    num3 = 2.0 # float 浮点数

    print("--------- 加减乘除运算 -------------")
    print("2+24:", num2+num1)
    print("2-24:", num2-num1)
    print("2*24:", num2*num1)
    # Python中,任意两个数进行除法操作,即使这两个数都是整数且能整除,结果依然会使用浮点数表示
    print("24/2:", num1/num2)
    print("(24+2) * 4:", (num1+num2) * 4)

    print("--------- 幂运算 -------------")
    print("2的3次方:", 2**3)

    print("--------- 取模运算 -------------")
    print("27%10 : ", 21%10)

    print("--------- 整除运算 -------------")
    # 整除运算符: 对结果往小的方向取整
    print("9//3 : ", 9//3)
    print("9//2 : ", 9//2)
    print("-9//2 : ", -9//2)
    print("9//-2 : ", 9//-2)

    print("--------- 浮点运算 -------------")
    # Python中,无论进行任何运算,只要有操作数为浮点数,结果必然使用浮点数表示
    print("24+2.0:", num1+num3)
    print("24*2.0:", num1*num3)
    print("3*0.1:", 3*0.1)

    在Python 3中, bool是int的子类。故True、False可以和数字进行运算,分别代表1、0。故对于bool布尔型变量可通过is身份运算符(是否指向同一个对象)来判断类型

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    b1 = True
    b2 = False
    # Python 3, bool是int的子类
    print("变量 b1 是否为 int类型及其子类: ", isinstance(b1, int))

    print("---------------- ==运算符: 判断值是否相等 -------------------------")
    print("b1<True>==1 : ", b1==1, ", b1<True>==True: ", b1==True)
    print("b2<False>==0 : ", b2==0, ", b2<False>==False: ", b2==False)


    print("------ 布尔变量可以和数字进行运算, True、False分别代表1、0 ---------")
    print("b1<True> + 9 : ", b1+9)
    print("b2<False> * 9 : ", b2*9)

    print("-------- is身份运算符: (是否指向同一个对象)来判断类型 -----------------")
    print("b1<True> is 1 :", b1 is 1, ", b1<True> is True :", b1 is True )
    print("b2<False> is 0 :", b2 is 0, ", b2<False> is False :", b2 is False)

    String 字符串

    Python 3中可使用单引号 或 双引号包裹来表示字符串;
    此外,还可以使用f-string 格式化(format)字符串,实现在字符串中使用指定变量的值进行替换;
    此外,为避免对字符串中的反斜杠\进行转义,还可以使用raw string原始字符串。其通常用于处理字符串中存在多个反斜线的情况。典型地场景有:正则表达式、目录路径等

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    # 使用单引号 或 双引号包裹均可
    name = "aaron zhu"
    sex = '男性'
    print("my name:", name, "my sex:", sex)

    print("--------- f-string 格式化(format)字符串 -------------------")
    first_name = "Bob"
    last_name = "Wang"
    # f-string 格式化(format)字符串 可以在字符串中使用指定变量的值进行替换
    # 用法:在引号前添加f, 然后将变量名放到{}花括号里引用即可
    full_name = f"my full name is {first_name} {last_name}"
    welcome_msg = f'Hello, {full_name}'
    print( full_name )
    print( welcome_msg )

    print("--------- raw string 原始字符串 -------------------")
    msg1 = "He say.\nLet\'s go. Bye~"
    print("msg 1:",msg1)
    # 原始字符串 不会对反斜杠\进行转义
    # 用法:在引号前添加 r 或 R
    msg2 = r"He say.\nLet\'s go. Bye~"
    print("msg 2:",msg2)
    msg3 = R"He say.\nLet\'s go. Bye~"
    print("msg 3:",msg3)

    字符串常见操作函数如下

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    print("--------------- 字符串切片 ---------------")
    # Python中字符串有两种索引方式,从左往右以0开始,从右往左以-1开始
    # 1. 变量[start] ---->>>> 只截取start处的一个字符
    # 1. 变量[start:] ---->>>> 截取start(包含)开始后的所有字符
    # 2. 变量[start:end] ---->>>> 截取start(包含)开始到end(不包含)的所有字符
    name = "AaronZhu"
    print("first char:", name[0], "last char: ", name[-1]);
    print("last name:", name[5:]);
    print("first name:", name[0:5]);

    print("--------------- 大小写转换 ---------------")
    name = "aaron zhu"
    print("每个单词的首字母变为大写:", name.title())
    print("字母全部变为小写:", name.lower())
    print("字母全部变为大写:", name.upper())

    print("--------------- 删除多余空格 ---------------")
    name = " Aaron Zhu "
    print("删除字符串两侧的空格:", name.strip(), "END" )
    print("删除字符串左侧的空格:", name.lstrip(), "END" )
    print("删除字符串右侧的空格:", name.rstrip(), "END" )

    print("--------------- 删除前后缀 ---------------")
    baidu_url = "https://www.baidu.com"
    print("删除指定前缀:", baidu_url.removeprefix("https://") )
    print("删除指定后缀:", baidu_url.removesuffix(".com") )


    print("--------------- 分隔字符串 ---------------")
    delimiter = "."
    name = "Bob.Aaron.tony"
    names = name.split(delimiter)
    print("names:", names)

    print("--------------- 连接字符串 ---------------")
    delimiter = "/"
    names = ["home", "bin", "test", "tool"]
    # join方法接受一个可迭代对象,将其中的元素拼接为一个字符串
    # 其中,各元素之间通过方法调用者的字符串进行连接
    # Note: 可迭代对象中的元素必须全部是字符串,否则会抛异常
    join_res = delimiter.join(names)
    print("join_res:", join_res)

    关于字符串格式化,这里补充说明下f-string 格式化(format)字符串是Python 3.6中才新引入的。在此之前格式化字符串主要有两种办法:古老的繁琐的%运算符格式化字符串、Python 2.6 版本中引入的str.format()方法

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    name = "Luca"
    age = 18
    weight = 66.66
    likes = ["阅读","旅行","运动"]

    # %运算符 格式化字符串
    # 字符串中使用%d、%s等占位符,然后在%运算符右侧将要插入的值作为元组进行传递,即可以将这些值插入到字符串中
    # 示例入戏:
    # "xxx %s xxxxxx" % (value1,)
    # "xxx %s xx %s xxx" % (value1, value2)
    my_info1 = "我叫%s, 芳龄%d岁。体重只有%.4f公斤。我喜欢%s" % (name, age, weight, likes)
    print("my info 1: ", my_info1)

    # str.format()方法 格式化字符串 : 使用{}作为占位符
    my_info2 = "我叫{}, 芳龄{}岁。体重只有{}公斤。我喜欢{}".format(name, age, weight, likes)
    print("my info 2: ", my_info2)

    类型判断:type函数、isinstance函数