Skip to content

1 、入门


一、数据类型🧀

name = input("Enter you name:") # input() 默认输入类型是字符串
print("Your name is", name)
x = input("Enter a number: ")
print("One half of", x, "=", x/2) # 错误 不能对于字符串运算

1、基本数据类型🧀

print(type(2))           # int
print(type(2.2))         # float
print(type(2 < 2.2))     # bool (boolean)
print(type(type(42)))    # type

print("#####################################################")

print(type("2.2"))       # str (string or text)
print(type([1,2,3]))     # list
print(type((1,2,3)))     # tuple
print(type({1,2}))       # set
print(type({1:42}))      # dict 
print(type(2+3j))        # complex  
print(type(f))           # A function is also a value!

幂运算结合性

print(3**7**6)  # 从右向左计算次方

短路逻辑

在短路逻辑中,

  • and 表达式一旦遇到 False 就立即返回,不再继续判断;

  • or 表达式一旦遇到 True 就立即返回,后续条件不再执行。

def yes():
    return True

def no():
    return False

def crash():
    return 1/0 # crashes!

print(no() and crash()) # False
print(yes() or crash()) # True

2、浮点数特性🧀

1
2
3
4
5
6
print(0.1 + 0.1 + 0.1) # 输出不是0.3整由于浮点计算精度问题

# 使用自定义函数
def AlmostEqual(d1,d2):
    epsilon = 10**-10
    return(abs(d1-d2) < epsilon)

3、type()isinstance()🧀

print(type(123) == int) # True
print(isinstance(123, int)) # True
特性 type(obj) isinstance(obj, Class)
是否考虑继承 ❌ 不考虑 ✅ 考虑(判断子类实例)
判断语法 type(obj) == Class isinstance(obj, Class)
使用场景 精确类型判断 推荐用于类型检查(更通用)

二、变量与函数🧀

1、变量🧀

  • 只能包含字母、数字和下划线(_)
  • 不能以数字开头
  • 不能是 Python 的关键字(保留字)
  • 大小写敏感

命名规范(PEP8 风格)

用途 推荐命名格式 示例
普通变量 / 函数名 小写 + 下划线(snake_case) total_score, get_name()
常量(不可变值) 全大写 + 下划线 MAX_SPEED, PI
类名 大写开头 + 驼峰式(PascalCase) Student, DataLoader
私有变量 前加下划线 _internal_var

下划线的特殊用法

写法 含义
_var 表示“内部使用”变量(不是强制私有)
__var 类中的私有变量(触发名称重整)
__init__ 特殊方法(Python 内部定义的方法)
_(单下划线) 通常表示“临时变量”或“忽略变量”
  • 变量是会被覆盖的
1
2
3
4
5
6
7
8
x = 9
print(x)

x += x * 9
print(x)

x = "abcde"
print(x)

2、函数🧀

1
2
3
4
def Add(x, y, z):
    return x + y + z

print(Add(1, 2, 3))

3、作用域🧀

  • 函数 fg 各自有自己的作用域。
  • 参数 x 在各自的函数中是局部变量,互不干扰。
1
2
3
4
5
6
7
8
9
def f(x):
    print("inside f,x =", x)
    return x * 7 + 6

def g(x):
    print("inside g,x =", x)
    return f(x) ** f(math.e)

print("The answer is:", g(5))

4、return语句🧀

  • 没有return语句默认返回None
  • return立即结束函数调用,之后的语句不使用
  • printreturn区别:打印只是当作输出,return返回一个值
print return
作用 输出信息到控制台(终端) 将函数的结果返回给调用者
位置 可以出现在任何地方 只能在函数内部使用
结果是否保存 ❌ 只显示,不保存 ✅ 返回值可以保存、传递
是否中止函数 ❌ 不中止函数 ✅ 遇到 return 函数立即结束
典型用途 用于调试、显示结果给用户 用于把计算结果传递回函数调用者

※ 常用函数🧀

  • 由于python的银行家舍入(平衡舍入),并非常见的四舍五入,最好写一个四舍五入的函数
  • 由于python浮点数特性,最好写一个比较浮点数的函数
1
2
3
4
def roundHalfUp(d):
    import decimal
    rounding = decimal.ROUND_HALF_UP
    return int(decimal.Decimal(d).to_integral_value(rounding=rounding))
1
2
3
def AlmostEqual(d1,d2):
    epsilon = 10**-10
    return(abs(d1-d2) < epsilon)

三、注释🧀

  • # 是正宗注释,快速临时停用代码、写说明。
  • ''' '''""" """ 是字符串,不赋值时相当于“伪注释”。
1
2
3
4
5
6
'''
This is a code comment.
'''

# This is also a code comment.
print("Hello, World!")

四、运算符🧀

1、位运算符🧀

运算符 说明
& 按位与(AND)
| 按位或(OR)
^ 按位异或(XOR)
~ 按位取反(NOT)
<< 左移位(乘以 2 的 n 次方)
>> 右移位(除以 2 的 n 次方)

2、逻辑运算符🧀

运算符 说明
and 与(都为 True 才为 True)
or 或(有一个为 True 就为 True)
not 非(取反)

3、成员运算符🧀

  • 检查元素是否在某容器中
运算符 说明
in 成员在对象中
not in 成员不在对象中

4、身份运算符🧀

  • 比较两个对象的地址/身份
运算符 说明
is 是否是同一个对象(地址一样)
is not 是否不是同一个对象