Python基础教程:条件判断与函数定义详解

云舒
云舒
发布时间:2026-10-14 | 5人浏览过
原创

本文深入解析Python中的基础操作与函数机制。详细讲解if语句对布尔值、空字符串、None及容器的真值测试规则,对比and/or与&&/||的语义差异。同时系统介绍函数的定义、位置参数、关键字传参、默认值设置、文档字符串规范,以及*args和**kwargs处理任意数量实参的高级用法,帮助开发者掌握Python核心语法。

本节内容聚焦于Python中的函数概念,但函数的实现依赖于具体的基础操作。因此,我们将内容划分为两个部分:首先是基础操作的介绍,其次是函数的定义与使用。

正文

接下来探讨Python环境中的基础操作逻辑。

条件操作

if语句的使用

在学习任何编程语言时,理解if语句不仅涉及布尔值判断,还需关注其能否处理其他数据类型,例如整数1或0的真值表现。


if 1:
    print("good");

输出结果为:good.

通过观察可知,Python中的if语句对布尔类型进行了扩展,支持更广泛的数据类型判断。

进一步观察以下示例:


if "":
    print("good");
if "123":
    print("123good");

输出显示为:"123good" 这表明Python将空字符串视为False状态。


if None:
    print("none");

若没有任何输出,说明None也被视为False状态。此处需特别说明,Python中没有Null概念,仅使用None表示空值。

接下来考察if语句对列表和集合的判断逻辑。


list=[]
a={};
if list:
    print("not none");
else:
    print("none")
if a:
    print("not none");
else:
    print("none")

代码返回两个None,说明Python还会根据对象的长度(len)进行判断,这一设计非常友好。

在if语句中,逻辑或和逻辑与是否仍沿用其他语言中的&&和||符号?

Python强调代码的可读性与语义化,因此直接使用and和or关键字来表示逻辑与和逻辑或。

具体示例如下:


list=[]
if 'good' in list:
    print("have good");
elif ('not good' in list or 'sleep' in list) and 'name' in list:
     print("not good");

上述代码展示了else if被替换为elif的用法。此外,检查列表是否包含特定字符可直接使用in运算符。

输入提示:

在前文及续篇中多次出现print输出语句,那么如何实现用户输入呢?


name = input("please say your name:");
print(name);

输入与输出操作示例:


please say your name:11
11

此处需强调一点,name变量赋值时的等号两侧必须保留空格,这是Python的语法规范,否则可能引发异常。

其他常见操作包括: while循环与其他语言类似,但需注意while语句后必须添加冒号,例如:


while true:
  pass

函数定义

在多种编程语言中,函数都是核心组件,因为代码不可能无限延伸单行。


def printName(firstName,lastName):
   print("firstName:"+firstName+"lastName:"+lastName);
printName("firstName","lastName");

输出结果为:firstName:firstNamelastName:lastName

学习多种语言后,一个关键问题是:Python是否支持参数默认值或显式传参?


def printName(firstName,lastName):
   print("firstName:"+firstName+"lastName:"+lastName);
printName(firstName="firstName",lastName="lastName");

事实证明,Python既支持显式传参,也支持设置默认值。


def printName(firstName,lastName="tom"):
   print("firstName:"+firstName+"lastName:"+lastName);
printName(firstName="firstName");

如此调用即可。然而我们注意到,调用printName时若无提示信息,需要添加注释说明:


def printName(firstName,lastName="tom"):
   """
   printName 输出名字
   args:
     firstName string  
     lastName string
   return:
      none
   """
   print("firstName:"+firstName+"lastName:"+lastName);
printName(firstName="firstName");

查看具体效果:

是的,这种规范对于团队协作而言更加友好。

此外,函数另一个值得关注的特性是能否传递任意数量的实参。


def printName(*name):
   """
   printName say name
   args:
     firstName string  
     lastName string
   return:
      none
   """
   print("firstName:"+name[0]+"lastName:"+name[1]);
printName("firstName","lastname");

这样似乎即可实现,*name表示创建一个元组,传递的任意参数将组成一个元组。

任意数量的实参是否仅限于数组形式?若在定义中增加**,则可以传递字典类型的参数。


def printName(**name):
   """
   printName say name
   args:
     firstName string  
     lastName string
   return:
      none
   """
   print(name);
printName(firstName="firstName",lastname="lastname");

输出结果为:{'lastname': 'lastname', 'firstName': 'firstName'}

到此为止,关于Python基础入门之普通操作与函数的介绍已结束,更多相关Python普通操作与函数内容请搜索本站以前的文章或继续浏览下面的相关文章,希望大家以后多多支持本站!

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表