百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 博客教程 > 正文

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

connygpt 2024-10-10 05:18 8 浏览

输入输出

在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

相关推荐

3分钟让你的项目支持AI问答模块,完全开源!

hello,大家好,我是徐小夕。之前和大家分享了很多可视化,零代码和前端工程化的最佳实践,今天继续分享一下最近开源的Next-Admin的最新更新。最近对这个项目做了一些优化,并集成了大家比较关注...

干货|程序员的副业挂,12个平台分享

1、D2adminD2Admin是一个完全开源免费的企业中后台产品前端集成方案,使用最新的前端技术栈,小于60kb的本地首屏js加载,已经做好大部分项目前期准备工作,并且带有大量示例代码,助...

Github标星超200K,这10个可视化面板你知道几个

在Github上有很多开源免费的后台控制面板可以选择,但是哪些才是最好、最受欢迎的可视化控制面板呢?今天就和大家推荐Github上10个好看又流行的可视化面板:1.AdminLTEAdminLTE是...

开箱即用的炫酷中后台前端开源框架第二篇

#头条创作挑战赛#1、SoybeanAdmin(1)介绍:SoybeanAdmin是一个基于Vue3、Vite3、TypeScript、NaiveUI、Pinia和UnoCSS的清新优...

搭建React+AntDeign的开发环境和框架

搭建React+AntDeign的开发环境和框架随着前端技术的不断发展,React和AntDesign已经成为越来越多Web应用程序的首选开发框架。React是一个用于构建用户界面的JavaScrip...

基于.NET 5实现的开源通用权限管理平台

??大家好,我是为广大程序员兄弟操碎了心的小编,每天推荐一个小工具/源码,装满你的收藏夹,每天分享一个小技巧,让你轻松节省开发效率,实现不加班不熬夜不掉头发,是我的目标!??今天小编推荐一款基于.NE...

StreamPark - 大数据流计算引擎

使用Docker完成StreamPark的部署??1.基于h2和docker-compose进行StreamPark部署wgethttps://raw.githubusercontent.com/a...

教你使用UmiJS框架开发React

1、什么是Umi.js?umi,中文可发音为乌米,是一个可插拔的企业级react应用框架。你可以将它简单地理解为一个专注性能的类next.js前端框架,并通过约定、自动生成和解析代码等方式来辅助...

简单在线流程图工具在用例设计中的运用

敏捷模式下,测试团队的用例逐渐简化以适应快速的发版节奏,大家很早就开始运用思维导图工具比如xmind来编写测试方法、测试点。如今不少已经不少利用开源的思维导图组件(如百度脑图...)来构建测试测试...

【开源分享】神奇的大数据实时平台框架,让Flink&Spark开发更简单

这是一个神奇的框架,让Flink|Spark开发更简单,一站式大数据实时平台!他就是StreamX!什么是StreamX大数据技术如今发展的如火如荼,已经呈现百花齐放欣欣向荣的景象,实时处理流域...

聊聊规则引擎的调研及实现全过程

摘要本期主要以规则引擎业务实现为例,陈述在陌生业务前如何进行业务深入、调研、技术选型、设计及实现全过程分析,如果你对规则引擎不感冒、也可以从中了解一些抽象实现过程。诉求从硬件采集到的数据提供的形式多种...

【开源推荐】Diboot 2.0.5 发布,自动化开发助理

一、前言Diboot2.0.5版本已于近日发布,在此次发布中,我们新增了file-starter组件,完善了iam-starter组件,对core核心进行了相关优化,让devtools也支持对IAM...

微软推出Copilot Actions,使用人工智能自动执行重复性任务

IT之家11月19日消息,微软在今天举办的Ignite大会上宣布了一系列新功能,旨在进一步提升Microsoft365Copilot的智能化水平。其中最引人注目的是Copilot...

Electron 使用Selenium和WebDriver

本节我们来学习如何在Electron下使用Selenium和WebDriver。SeleniumSelenium是ThoughtWorks提供的一个强大的基于浏览器的开源自动化测试工具...

Quick 'n Easy Web Builder 11.1.0设计和构建功能齐全的网页的工具

一个实用而有效的应用程序,能够让您轻松构建、创建和设计个人的HTML网站。Quick'nEasyWebBuilder是一款全面且轻巧的软件,为用户提供了一种简单的方式来创建、编辑...