【python】(1)输入输出,注释,变量和关键字

liftword3周前 (12-04)技术文章13

输入输出

在Python中,控制台输入和输出是编程的基础,允许用户与程序进行最简单的交互。

输入(Input)

使用 input() 函数从控制台接收用户输入。 input() 函数可以接受一个字符串参数,作为提示信息显示给用户。

name = input("请输入你的名字: ") 
print("欢迎," + name)

输出(Print)

print() 函数用于在控制台输出信息。它可以输出字符串、数字,以及其他多种数据类型。 print() 也可以直接进行简单运算后输出结果。

age = 25 
print("年龄:", age)  
# 输出变量 
print("明年你将是", age + 1, "岁。")  
# 在print中进行运算

实践示例

尝试运行以下代码以理解输入输出的操作:

price = input("请输入美元: ") 
int_price = int(price)  # 将输入的字符串转换为整数 
result = int_price * 6.9 
print("换算后的人民币为:", result)

在上述代码中,我们首先使用 input() 函数提示用户输入美元金额。然后,使用 int() 函数将输入的字符串转换为整数。最后,我们计算并打印出换算后的人民币金额。

注释

注释是一种对代码进行说明和解释的文本,它不参与代码的执行。注释的主要目的是使代码更易于理解,无论是对于编写代码的原作者还是其他阅读代码的人。Python提供了两种类型的注释:单行注释和多行注释。

单行注释

单行注释以井号( #)开头,其后是注释文本。Python解释器会忽略井号及其后的文本,直到行尾。单行注释通常用于简短说明代码的某个特定部分,例如变量的用途或某行代码的目的。

# 这是一个单行注释
x = 5  # 这里设置x的值为5

多行注释

多行注释可以用三个单引号( ''')或三个双引号( """)包裹一段注释文本,用于编写跨越多行的注释。虽然Python没有专门的语法来定义多行注释,但多行字符串常被用作这个目的,特别是在定义函数、类、模块或文件的文档字符串(docstrings)时。

"""
这是一个多行注释的例子。
它可以跨越多行。
"""
def my_function():
    # 函数内的单行注释
    pass

文档字符串(Docstrings)

文档字符串(docstrings)是一种特殊类型的多行字符串,用于说明模块、函数、类或方法的目的和如何使用。文档字符串位于模块、函数或类的第一行,使用三个双引号。

def add(x, y):
    """这个函数用于计算两个数的和。

    参数:
    x - 第一个加数。
    y - 第二个加数。

    返回值:
    两个数的和。
    """
    return x + y

通过内置的 help()函数、 .__doc__属性或各种IDE的文档查看功能,可以轻松访问文档字符串,从而了解模块、函数、类或方法的详细说明。

print(add.__doc__) 
help(add)

变量

变量用于存储数据值。在Python中,变量无需声明类型,且可以随时更改变量的类型,这是因为Python是动态类型的语言。

定义和赋值

通过赋值操作 (=)来创建变量,Python解释器会自动确定变量的类型。

x = 10  # x是一个整数
message = "Hello, Python!"  # message是一个字符串

命名规则

  • 变量名必须以字母或下划线 _开头,不能以数字开头。
  • 变量名只能包含字母、数字和下划线。
  • 变量名是大小写敏感的,例如, myVarmyvar是两个不同的变量。
  • 避免使用Python内置函数和关键字作为变量名,例如不要使用 liststr作为变量名。

变量的作用域

变量的作用域决定了在哪些部分你可以访问某个变量。Python中的变量作用域分为四种:

  1. 局部作用域(Local):在函数内部声明的变量属于局部作用域,只能在函数内部访问。
  2. 封闭作用域(Enclosing):对于嵌套函数,封闭作用域的变量可以在内层函数中访问,但不能在外层函数之外访问。
  3. 全局作用域(Global):在模块级别声明的变量属于全局作用域,可以在整个模块内任何地方访问。
  4. 内建作用域(Built-in):Python自带的内建变量名,如 printlen等,属于内建作用域。

变量的声明周期

  1. 创建:变量的生命周期开始于其首次赋值。Python是动态类型语言,无需显式声明变量类型。变量类型由赋值时的数据类型决定。
  2. 更新和访问:在其生命周期内,变量的值可以被更新或访问。变量的作用域决定了变量可以被访问和更新的代码区域。
  3. 引用计数:Python使用引用计数机制来跟踪对象被引用的次数。当对象的引用计数降到0时,Python的垃圾收集器会自动回收这个对象所占用的内存空间。
  4. 销毁:当变量的生命周期结束时,例如:
  • 函数执行完毕,局部变量的作用域结束。
  • 程序结束,全局变量的生命周期结束。
  • 引用计数变为0,对象不再被需要。
def func():
    local_var = 5  # local_var在这里创建
    print(local_var)  # 在局部作用域内访问

# 全局变量
global_var = 10

def another_func():
    global global_var
    global_var += 1  # 在全局作用域内更新
    print(global_var)

func()
another_func()

# local_var现在不可访问,因为func()的执行已结束
# global_var在程序结束时生命周期结束

在这个示例中, local_varfunc()执行结束时生命周期结束,因为它是局部变量。而 global_var作为全局变量,在整个程序执行过程中都是可访问的,直到程序结束。

关键字

这些保留字在Python语言中具有特定的意义,因此不能用作变量名、函数名或任何其他标识符名称。

下面是Python 3.10版本的保留字列表,以表格形式展示:

序号

关键字

描述

1

False

布尔值假

2

None

表示没有值

3

True

布尔值真

4

and

逻辑运算符"与"

5

as

用于创建别名

6

assert

用于调试时的条件测试

7

async

用于定义异步函数

8

await

用于异步操作中等待一个操作完成

9

break

用于循环中立即退出循环

10

class

用于定义类

11

continue

用于立即跳到循环的下一个迭代

12

def

用于定义函数

13

del

用于删除对象

14

elif

用于 if语句中定义一个条件分支

15

else

用于 iffor循环中定义一个替代执行块

16

except

用于捕获和处理异常

17

finally

用于 try块中定义一个最终的执行块,无论是否有异常发生都会执行

18

for

用于循环

19

from

用于导入模块中的特定部分

20

global

用于声明全局变量

21

if

用于条件判断

22

import

用于导入模块

23

in

用于判断一个值是否为另一个值的成员

24

is

用于测试两个变量是否相同

25

lambda

用于创建匿名函数

26

nonlocal

用于声明非局部变量

27

not

逻辑运算符"非"

28

or

逻辑运算符"或"

29

pass

一个空操作,占位符

30

raise

用于触发异常

31

return

用于函数中返回值

32

try

用于开始一个异常处理块

33

while

用于循环

34

with

用于简化异常处理或者会话清理代码

35

yield

用于从函数中返回一个生成器

使用 keyword.kwlist可以获取到当前Python解释器版本的完整保留字列表。

import keyword
keyword.kwlist

相关文章

震撼!用Python开发网站如此简单

Flask是一个基于Python语言的微型Web框架。之所以被称为微型,是因为其核心非常小,但是该Web框架简约而不简单,具有很强的扩展能力。本文介绍如何编写和运行第一个Flask Web应用程序。当...

独家 | 让你的代码事半功倍——Python装饰器

作者: Ayush Thakur 翻译:王可汗校对:潘玏妤本文约2400字,建议阅读5分钟本文介绍了用Python装饰器的基本概念和示例。大家好,欢迎来到我的博客!今天我将与大家分享一些神奇的Pyt...