python基础

从 Java 快速简单了解 Python 学习的记录

Python 基础

做了几个 Java 的 AI 项目后,感觉市面上 Python AI 应用开发需求更广,虽然平时也有用 Python,但是大部分都是 Vibe Coding 做的,所以自己掌握得不是很好,正好借此系统补一下 Python 基础。

基础变量与语法风格

我先定义了几个变量:

money = 50.1
name = "小明"
age = 18

和 Java 对比后,最直观的差异是:

  • 不需要写 ;
  • 不需要主类入口结构
  • 定义变量时不需要显式写类型

for 循环与字符串格式化

for i in range(4):
    print(f"{i + 1} hello world")

我这里用了 f-string。另外 print 也可以用逗号分隔参数:

print("money:", money)

我的理解是:这种写法更直接,不需要像 Java 一样频繁拼接字符串。

布尔值与 if/else

sig1 = True
sig2 = False

if sig2:
    print("sig2 is true")
else:
    print("sig2 is false")

这里我也注意到 Python 对缩进非常敏感,if/else 代码块完全依赖缩进层级。

函数与类型查看

def print_type(x):
    print(type(x))

print_type(money)
print_type(name)
print_type(age)

我目前这一步主要是熟悉:

  • 函数定义不强制写返回值类型
  • 可以通过 type() 快速看变量真实类型

类型转换

a = 123
print("a", type(str(a)))

这里验证了数字转字符串的写法:str(a)

基础运算与条件练习

这一段我主要练了整数运算、复合赋值、字符串输出、条件判断和列表操作:

print("5 // 2 =", 5 // 2)  # 整除,向下取整
print("5 ** 2 =", 5 ** 2)  # 幂运算,5 的 2 次方

num = 10
num += 6
print(f"num += 6 , num = {num}")
num //= 3
print("num //= 3 , num = ", num)

name1 = "xed"
name3 = """xed"""
print(name1, name3)

# 转义字符
print("hello\nworld")
print("hello\\nworld")

age = 14.49999
print("我是" + name1 + ",今年" + str(age) + "岁了")
print("我是%s,今年%.2f岁了" % (name1, age))
print(f"我是{name1},今年{age}岁了")

# name4 = input("请输入你的名字:")
# print(f"你好,{name4}!")

if age >= 18:
    print("你是成年人了")
else:
    print("你还是未成年人")

# and / or 的短路特性
sig1 = True
sig2 = False
if sig1 and sig2:
    print("sig1 and sig2 is true")
elif sig1 or sig2:
    print("sig1 or sig2 is false")
else:
    print("sig1 and sig2 is false")

nums = [1, 2, 3, 4, 5]
print(nums.index(3))

我这部分的结论:

  • //** 这两个运算符在 Python 里非常常用
  • 字符串输出里我更偏向 f-string,可读性最好
  • + 拼接字符串时要注意先做类型转换,例如 str(age)
  • andor 具备短路特性,条件表达式会提前结束
  • 列表查找位置可以直接用 index(),语义很清晰

标识符与命名规则

我今天重点记住了下面这些规则:

  • 标识符可以由中英文、数字、下划线组成
  • 不能以数字开头
  • 不能使用 Python 关键字
  • 大小写敏感

变量命名规范:

  • 使用小写字母
  • 多个单词用下划线分隔(snake_case)

错误命名示例:

  • 1name
  • 含特殊符号:name!name@name#

阶段总结

  • 先把 Java 思维里的样板代码去掉
  • 先习惯 Python 的缩进和动态类型
  • 先掌握最常用的循环、判断、函数、类型转换

后续我会继续补:列表/字典、面向对象、文件处理和常用 AI 开发库。