Java开发者10分钟就能学会Python?是真的吗?

今天要和大家分享下,java开发者如何快速上手python,只需花费10分钟,你就能快速学会了!

博主之前是做java开发的,转入python开发背景是刚好接手了一个AI Agent项目的开发,而Agent开发目前全球最主流框架便是LangChain,LangChain目前只提供了python和typescript的源码包!

再来看下TIOBE(https://hellogithub.com/report/tiobe)发布的2025年最新编程语言流行度排行榜:可以看到,python已经连续两年高居榜首,特别是在今年DeepSeek引爆AI后,Python的使用程度将占比更高!而当前主流的Agent框架:LangChain和LlamaIndex这些开源工程也都是python编写,**所以如果想转行做AI开发,python也是必须学习的编程语言!**

TIOBE 编程社区指数是什么?

「TIOBE 编程社区指数」是一种衡量编程语言流行度的标准,由成立于 2000 年 10 月位于荷兰埃因霍温的 TIOBE Software BV 创建和维护。该指数是根据网络搜索引擎对含有该语言名称的查询结果的数量计算出来的。该指数涵盖了 Google、百度、维基百科和 YouTube 的搜索结果。

今天这篇文章,我将和大家简单探讨下以下几个问题并给出我的建议

  • python开发使用什么IDE工具?
  • 开发python需要安装哪些插件?
  • java开发者如何快速进入python开发

python开发使用什么IDE工具?

目前Python 开发中常用的集成开发环境(IDE)工具有以下几种:

  1. PyCharm:由JetBrains公司开发,是Python开发中最受欢迎的IDE之一。它提供了丰富的功能,包括代码补全、调试、版本控制等。
  2. **Visual Studio Code (VS Code)**:由微软开发,是一个轻量级但功能强大的文本编辑器。通过安装Python扩展,它可以成为一个功能齐全的Python IDE。
  3. Spyder:是专门为科学计算和数据分析设计的,基于PyQt和PyOpenGL,非常适合用于科学计算和数据分析。
  4. Eclipse:虽然Eclipse是一个java常用的IDE,但通过安装PyDev插件,它可以成为Python开发的强大工具。
  5. Atom:由GitHub开发,是一个可高度定制的文本编辑器,通过安装相应的包,它可以用于Python开发。
  6. Sublime Text:虽然它主要是一个文本编辑器,但通过安装Python插件,它也可以用于Python编程。
  7. **Cursor(推荐)**:目前全球最流行的AI开发工具,基于开源vscode做的二次开发,博主用的就是该IDE开发python。
  8. TRAE(备选):字节今年新推出的IDE开发工具,功能对标Cursor,使用方式和VS Code基本差不多,等功能完善些可以尝试使用!

选择哪个IDE取决于个人偏好,不过现在AI编码时代,博主本人**更推荐使用新版的AI-IDE工具,比如:Cursor和TRAE**,这两款原生AI-IDE就非常好用!虽然VS Code也提供了一些AI编码插件,但相对于这些原生工具,其使用便利度还是稍逊一筹。

开发python需要安装哪些插件?

以下插件在VS Code、Cursor、TRAE上均可以搜索到

1、Pylance

智能补全代码、代码快速导航,可以让开发者点击函数或者变量来快速跳转到代码定义的位置

2、Python Indent

VSCode里对Python的自动缩进有点不准确,Python Indent能纠正VSCode的缩进错误!

3、Python Preview

<font style="color:rgb(77, 77, 77);">Python Preview</font>可展现可视化调试的过程,并添加到我们的Python代码中。它将调试代码转换为带有动画和图形元素的交互式会话,以表示应用程序状态,对于代码调试非常直观。

4、autopep8

安装完成后右键可以看到格式化文档快捷键,不安装是看不到的!

快捷键Ctrl + Shift + F格式化

5、Python Snippets

Python Snippets 插件可以让我们的 Python 编程更加高效。它包含了大量的内置方法,以及string、list、sets、tuple、dictionary、class代码片段,并且还为每个代码段提供至少一个示例。

6、autoDocstring

这个扩展我应该已经推荐了好多次,能够自动生成函数的注释格式,通过tab键快速切换填充块编写相应的注释。

7、Python Docstring Generator

Python Docstring Generator可以自动创建docstring,这真的为开发人员减少了的很大工作量。并且,生成的文档字符串遵循所有标准格式,包括Google、docBlockr、Numpy、Sphinx和PEP0257。它的主要功能包括:

  • 快速生成一个可通过Tab键浏览的docstring代码段
  • 在几种不同类型的文档字符串格式之间进行选择
  • 通过pep484类型提示、默认值和var名称推断参数类型
  • 支持args,kwargs,修饰符,错误和参数类型

8、Better Comments

这是一个让你能更好地编写注释的工具,它能根据关键词用不同的颜色高亮代码片段。支持以下类型的高亮:

  • 感叹号 “!” 代码警告。
  • 问号“?”代表存留疑问。
  • TODO 代码未来将要进行的操作。
  • @param 参数

此外,它还支持在设置中自定义需要高亮句子的首部关键词。

9、Git Graph

这玩意可是Git神器,堪比Pycharm内的Git管理器。通过这个扩展,可以清楚地看见当前分支的commit记录和变化,可以通过按钮的方式轻易地创建、切换分支、cherry pick、merge等操作。

java开发者如何快速进入python开发

在Python中,<font style="color:rgb(0, 0, 0);">class</font> 的定义和调用方式与Java类似,但也有一些差异。对于刚从Java转过来的开发者来说,以下是一些关键点,掌握以下关键点你就能快速上手。

1、新建文件

python中,新建python文件是以.py结尾,文件名推荐使用“_”连接单词

在py里面定义类时,类的名称无需和文件名一致

java工程里,java文件通常是.java格式,一般使用的是驼峰命名方式,并且类名和文件名要相同

2、定义一个类

在Python中,使用 class 关键字来定义一个类。类名通常采用驼峰命名法(首字母大写)。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class MyClass:
# 类属性
class_attribute = "I am a class attribute"

# 初始化方法
def __init__(self, name, age):
# 实例属性
self.name = name # self类似于Java中的this
self.age = age

# 实例方法
def introduce(self):
return f"My name is {self.name}, and I am {self.age} years old."

# 类方法
@classmethod
def show_class_attribute(cls):
return cls.class_attribute

3、创建对象

在Python中,通过类名后面加括号来创建对象。这类似于Java中的 new 关键字。

1
2
# 创建MyClass的一个实例
person = MyClass("Alice", 25)

4、调用实例方法和访问实例属性

实例方法和实例属性通过点运算符 . 来访问。

1
2
3
4
5
6
# 调用实例方法
print(person.introduce()) # 输出: My name is Alice, and I am 25 years old.

# 访问实例属性
print(person.name) # 输出: Alice
print(person.age) # 输出: 25

5、类方法和类属性

类属性属于类本身,而不是实例。类方法使用 @classmethod 装饰器来定义。

1
2
3
4
5
# 调用类方法
print(MyClass.show_class_attribute()) # 输出: I am a class attribute

# 访问类属性
print(MyClass.class_attribute) # 输出: I am a class attribute

6、Python中的self关键字

  • Python中没有显式的 this 关键字。self 是实例方法的第一个参数,表示对象本身。
  • 在类的定义中,self 是必须的,但在类外部不需要传递它。

7、构造方法

Python中的构造方法是 __init__ 方法,类似于Java中的构造器。每次创建对象时,这个方法都会被自动调用。

8、静态方法

如果一个方法不需要访问实例或类属性,可以使用 @staticmethod 装饰器来定义静态方法。

1
2
3
@staticmethod
def my_static_method():
print("I am a static method.")

9、Python中的继承

Python支持多继承。子类可以通过 super() 访问父类的方法。

1
2
3
4
5
6
7
class ChildClass(MyClass):
def __init__(self, name, age, job):
super().__init__(name, age)
self.job = job

def introduce(self):
return f"{super().introduce()} I work as a {self.job}."

10、动态特性

Python的类是动态的,可以在实例上动态添加属性和方法(虽然不总是推荐这样做)。

1
2
person.new_attribute = "Dynamic attribute"
print(person.new_attribute) # 输出: Dynamic attribute

12、Dict的使用

在python工程中,你可能会经常看到Dict。

在 Python 中,Dict 通常指的是字典(dictionary),它是 Python 的内置数据类型之一,用于存储键值对(key-value pairs)。Python 中的字典类似于 Java 中的 HashMapMap,是一种可变的、无序的数据结构。

字典的定义

字典由键(key)和值(value)组成,每个键值对之间用冒号(:)分隔,整个字典用大括号({})包裹。例如:

1
2
3
4
5
6
# 定义一个字典
my_dict = {
"name": "Alice",
"age": 25,
"is_student": False
}

键可以是任意不可变类型(如整数、字符串、元组),而值可以是任何数据类型(包括字典本身)。

如果你看到 Dict,可能是指字典类型,或者来自 Python 的类型提示(特别是在现代代码中)。例如,在类型提示中:

1
2
3
4
from typing import Dict

def func(data: Dict[str, int]) -> None:
pass

这里的 Dict[str, int] 表示一个键为字符串、值为整数的字典。

字典的基本用法

1. 访问字典中的值

使用键来获取对应的值:

1
2
print(my_dict["name"])  # 输出: Alice
print(my_dict["age"]) # 输出: 25

注意:如果访问一个不存在的键,会抛出 KeyError。为了避免这个问题,可以使用 get 方法:

1
2
3
print(my_dict.get("age"))           # 输出: 25
print(my_dict.get("unknown_key")) # 输出: None
print(my_dict.get("unknown_key", 0)) # 输出: 0(提供默认值)

2. 修改或添加值

可以通过键直接赋值来修改或添加新的键值对:

1
2
3
4
5
6
7
# 修改值
my_dict["age"] = 26
print(my_dict["age"]) # 输出: 26

# 添加新的键值对
my_dict["email"] = "alice@example.com"
print(my_dict) # 输出: {'name': 'Alice', 'age': 26, 'is_student': False, 'email': 'alice@example.com'}

3. 删除键值对

使用 del 关键字删除键值对:

1
2
del my_dict["is_student"]
print(my_dict) # 输出: {'name': 'Alice', 'age': 26, 'email': 'alice@example.com'}

也可以使用 pop 方法删除键值对并返回被删除的值:

1
2
3
age = my_dict.pop("age")
print(age) # 输出: 26
print(my_dict) # 输出: {'name': 'Alice', 'email': 'alice@example.com'}

4. 检查键是否存在

1
2
if "name" in my_dict:
print("Key 'name' exists!") # 输出: Key 'name' exists!

5. 遍历字典

可以遍历字典的键、值或键值对。

  • 遍历键
1
2
3
4
5
for key in my_dict:
print(key)
# 输出:
# name
# email
  • 遍历值
1
2
3
4
5
for value in my_dict.values():
print(value)
# 输出:
# Alice
# alice@example.com
  • 遍历键值对
1
2
3
4
5
for key, value in my_dict.items():
print(f"Key: {key}, Value: {value}")
# 输出:
# Key: name, Value: Alice
# Key: email, Value: alice@example.com

6. 其他常用方法

  • keys(): 返回字典中所有键的视图。
  • values(): 返回字典中所有值的视图。
  • items(): 返回字典中所有键值对的视图。
  • update(dict): 更新字典。例如:
1
2
3
my_dict.update({"age": 30, "is_student": True})
print(my_dict)
# 输出: {'name': 'Alice', 'email': 'alice@example.com', 'age': 30, 'is_student': True}

7. 字典推导式

可以通过字典推导式快速生成字典。例如:

1
2
3
# 生成一个键为1到3、值为平方数的字典
squares = {x: x**2 for x in range(1, 4)}
print(squares) # 输出: {1: 1, 2: 4, 3: 9}

11、常见问题及对比

与Java的差异

  • 类定义
    • Python不使用大括号 {} 定义类体,而是使用缩进。
    • 方法不需要声明访问修饰符(如 publicprivate)。
  • 实例化
    • Java需要 new 关键字,而Python直接用类名加括号。
  • 方法
    • Python中的每个实例方法(除了类方法和静态方法)都需要将 self 作为第一个参数。
  • 属性和方法的访问
    • Python没有严格的访问控制。属性和方法默认都是 public

视频学习网站

如果你想更深入的学习python,或者完成是0基础的学员,也可以通过以下在线视频网址去学习:https://playedu.quanyouhulian.com,直接扫码登录即可,里面有从入门到精通的全部视频详解!

总结

Python类的定义和调用方式与Java有很多相似之处,但也有一些关键差异。通过少量的练习,你就能很快适应Python的类机制!


Java开发者10分钟就能学会Python?是真的吗?
http://example.com/2025/03/08/后端技术互联/Java开发者10分钟就能学会Python?是真的吗?/
作者
技术Z先生
发布于
2025年3月8日
许可协议