【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是一个字符串
命名规则
- 变量名必须以字母或下划线 _开头,不能以数字开头。
- 变量名只能包含字母、数字和下划线。
- 变量名是大小写敏感的,例如, myVar和 myvar是两个不同的变量。
- 避免使用Python内置函数和关键字作为变量名,例如不要使用 list或 str作为变量名。
变量的作用域
变量的作用域决定了在哪些部分你可以访问某个变量。Python中的变量作用域分为四种:
- 局部作用域(Local):在函数内部声明的变量属于局部作用域,只能在函数内部访问。
- 封闭作用域(Enclosing):对于嵌套函数,封闭作用域的变量可以在内层函数中访问,但不能在外层函数之外访问。
- 全局作用域(Global):在模块级别声明的变量属于全局作用域,可以在整个模块内任何地方访问。
- 内建作用域(Built-in):Python自带的内建变量名,如 print、 len等,属于内建作用域。
变量的声明周期
- 创建:变量的生命周期开始于其首次赋值。Python是动态类型语言,无需显式声明变量类型。变量类型由赋值时的数据类型决定。
- 更新和访问:在其生命周期内,变量的值可以被更新或访问。变量的作用域决定了变量可以被访问和更新的代码区域。
- 引用计数:Python使用引用计数机制来跟踪对象被引用的次数。当对象的引用计数降到0时,Python的垃圾收集器会自动回收这个对象所占用的内存空间。
- 销毁:当变量的生命周期结束时,例如:
- 函数执行完毕,局部变量的作用域结束。
- 程序结束,全局变量的生命周期结束。
- 引用计数变为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_var在 func()执行结束时生命周期结束,因为它是局部变量。而 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 | 用于 if或 for循环中定义一个替代执行块 |
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是一款全面且轻巧的软件,为用户提供了一种简单的方式来创建、编辑...
- 一周热门
- 最近发表
- 标签列表
-
- kubectlsetimage (56)
- mysqlinsertoverwrite (53)
- addcolumn (54)
- helmpackage (54)
- varchar最长多少 (61)
- 类型断言 (53)
- protoc安装 (56)
- jdk20安装教程 (60)
- rpm2cpio (52)
- 控制台打印 (63)
- 401unauthorized (51)
- vuexstore (68)
- druiddatasource (60)
- 企业微信开发文档 (51)
- rendertexture (51)
- speedphp (52)
- gitcommit-am (68)
- bashecho (64)
- str_to_date函数 (58)
- yum下载包及依赖到本地 (72)
- jstree中文api文档 (59)
- mvnw文件 (58)
- rancher安装 (63)
- nginx开机自启 (53)
- .netcore教程 (53)