来自c#背景,变量和方法名的命名约定通常是camelCase或PascalCase:
// C# example
string thisIsMyVariable = "a"
public void ThisIsMyMethod()
在Python中,我见过上面的情况,但我也见过使用下划线:
# python example
this_is_my_variable = 'a'
def this_is_my_function():
Python是否有更可取、更明确的编码风格?
来自c#背景,变量和方法名的命名约定通常是camelCase或PascalCase:
// C# example
string thisIsMyVariable = "a"
public void ThisIsMyMethod()
在Python中,我见过上面的情况,但我也见过使用下划线:
# python example
this_is_my_variable = 'a'
def this_is_my_function():
Python是否有更可取、更明确的编码风格?
当前回答
就我个人而言,我尝试在类、mixedCase方法和函数中使用CamelCase。变量通常用下划线分隔(当我记得的时候)。这样我一眼就能知道我到底在调用什么,而不是所有东西看起来都一样。
其他回答
谷歌Python风格指南有以下约定:
module_name, package_name, ClassName, method_name, ExceptionName, function_name, GLOBAL_CONSTANT_NAME, global_var_name, instance_var_name, function_parameter_name, local_var_name。
CLASS_CONSTANT_NAME应该应用类似的命名方案
通常,要遵循语言标准库中使用的约定。
无论是否在课堂上或在课堂外:
变量和函数小写,如下所示:
name = "John"
def display(name):
print("John")
如果它们多于一个单词,则用下划线“_”分隔,如下所示:
first_name = "John"
def display_first_name(first_name):
print(first_name)
并且,如果一个变量是一个常量,它是大写的,如下所示:
FIRST_NAME = "John"
就我个人而言,我尝试在类、mixedCase方法和函数中使用CamelCase。变量通常用下划线分隔(当我记得的时候)。这样我一眼就能知道我到底在调用什么,而不是所有东西看起来都一样。
大多数使用python的人更喜欢下划线,但即使我已经使用python 5年多了,我仍然不喜欢它们。我只是觉得它们很丑,但也许这就是我脑子里的爪哇。
I simply like CamelCase better since it fits better with the way classes are named, It feels more logical to have SomeClass.doSomething() than SomeClass.do_something(). If you look around in the global module index in python, you will find both, which is due to the fact that it's a collection of libraries from various sources that grew overtime and not something that was developed by one company like Sun with strict coding rules. I would say the bottom line is: Use whatever you like better, it's just a question of personal taste.