热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

编程语言概述与Python变量详解

本文介绍了编程语言的基本分类,包括机器语言、汇编语言和高级语言的特点及其优缺点。随后详细讲解了Python解释器的安装与配置方法,并探讨了Python变量的定义、使用及内存管理机制。

一、编程语言概述

1.1 机器语言:直接使用计算机能够理解的二进制指令编写程序,直接控制硬件。

优点:执行效率高,但跨平台性差。

缺点:开发效率低。

1.2 汇编语言:使用英文标签替代二进制指令编写程序,本质上也是直接控制硬件。

1.3 高级语言:使用人类容易理解的表达方式编写程序,无需考虑硬件操作细节。

编译型语言:类似于谷歌翻译,将源代码一次性翻译成机器码。

解释型语言:类似于同声传译,逐行解释执行源代码,具有较强的跨平台性。

执行效率:机器语言 > 汇编语言 > 高级语言(编译型 > 解释型)

开发效率:机器语言 <汇编语言 <高级语言(编译型 <解释型)

跨平台性:机器语言 <汇编语言 <高级语言(编译型 <解释型)

二、Python解释器介绍

Python解释器的发展历程可以参考这篇文章

三、安装Python解释器

3.1 验证Python解释器的安装

C:\Users\oldboy>python.exe  # 在CMD中运行Python,如果环境变量未配置正确,会提示找不到Python解释器。

'python.exe' 不是内部或外部命令,也不是可运行的程序或批处理文件。

C:\Users\oldboy>D:\  # 切换到Python所在目录。

D:\>cd D:\python27  # 使用cd命令切换目录。

D:\Python27>python.exe

Python 2.7.14 (v2.7.14:84471935ed, Sep 16 2017, 20:19:30) [MSC v.1500 32 bit (Intel)] on win32

Type "help", "copyright", "credits" or "license" for more information.

>>> print("hello world")

hello world

>>>

3.2 设置环境变量

Windows: 将Python安装路径添加到系统环境变量中,例如:D:\python27;c:\a\b;E:\c\a

Mac/Linux: 在终端中编辑/etc/profile文件,添加以下内容:

PATH=/usr/local/python27:$PATH

export PATH

保存并重启终端。

四、执行Python程序的两种方式

1. 交互式:即时得到命令的执行结果,通常用于调试代码。

2. 命令行:例如,运行命令 `python3 D:\test.txt`。

2.1 注意:文件后缀名不影响程序的执行,但通常使用.py作为后缀。

2.2 运行Python程序的三个阶段:

1. 启动Python解释器。

2. Python解释器读取文件内容并加载到内存中。

3. Python解释器逐行解释并执行内存中的代码。

五、变量

1. 什么是变量

变量用于记录和衡量事物的状态,这些状态是可以改变的。

2. 为什么使用变量

变量使计算机能够像人类一样记忆和处理事物的状态。

3. 如何使用变量

3.1 定义变量

变量定义的三个组成部分:

Age = 18

变量名:应反映事物的属性。

赋值符号 =:将值绑定到变量名。

变量值:表示事物的状态。

3.2 引用变量

通过变量名访问其值。

强调:变量名是访问值的唯一方式。

3.3 变量命名规则

变量名应见名知意。

语法规定:

  • 变量名由字母、数字和下划线组成。
  • 不能以数字开头。
  • 推荐使用纯小写加下划线的命名方式,例如:age_of_oldboy。
  • 类名推荐使用驼峰体,例如:AgeOfOldboy。

3.4 常量(约定)

常量通常使用全大写字母加下划线命名,例如:AGE_OF_OLD_BOY。

3.5 变量值的特征

变量值具备三种特征:

ID:变量值在内存中的唯一标识,根据内存地址计算而来。

Type:变量值的数据类型,用于记录不同的状态。

值:变量的具体内容。

3.6 内存管理

Python使用引用计数机制进行内存管理:

引用计数增加:

age = 18  # 18的引用计数为1

x = age  # 18的引用计数为2

引用计数减少:

del age  # 18的引用计数减为1

x = 10  # 18的引用计数减为0


推荐阅读
  • iTOP4412开发板QtE5.7源码编译指南
    本文详细介绍了如何在iTOP4412开发板上编译QtE5.7源码,包括所需文件的位置、编译器设置、触摸库编译以及QtE5.7的完整编译流程。 ... [详细]
  • YB02 防水车载GPS追踪器
    YB02防水车载GPS追踪器由Yuebiz科技有限公司设计生产,适用于车辆防盗、车队管理和实时追踪等多种场合。 ... [详细]
  • 本文探讨了如何利用SqlDependency执行复杂的SQL查询,并确保在多线程环境下的安全性与效率。 ... [详细]
  • EasyMock实战指南
    本文介绍了如何使用EasyMock进行单元测试,特别是当测试对象的合作者依赖于外部资源或尚未实现时。通过具体的示例,展示了EasyMock在模拟对象行为方面的强大功能。 ... [详细]
  • 本文详细介绍了在使用Socket进行网络编程时,遇到链接器错误`undefined reference to WSAStartup@8`的解决方案,适用于多种开发环境。 ... [详细]
  • 如何恢复CAD中意外丢失的图纸数据
    当使用CAD进行绘图时,因突然断电或其他原因导致计算机关闭可能会造成工作数据的丢失。然而,通过利用CAD软件的自动保存功能,用户通常能够恢复至最近一次自动保存的数据状态。 ... [详细]
  • NameNode内存优化基于缓存相同文件名的方法
    NameNode内存优化基于缓存相同文件名的方法Namenodeheapoptimizationreuseobjectsforcommonlyuse ... [详细]
  • 本文介绍了如何利用Java中的URLConnection类来实现基本的网络爬虫功能,包括向目标网站发送请求、接收HTML响应、解析HTML以提取所需信息,并处理可能存在的递归爬取需求。 ... [详细]
  • python开发mysql:单表查询&多表查询
    一单表查询,以下是表内容二多表查询,一下是表内容三总结&表创建过程单 ... [详细]
  • 本文深入探讨 PHPCMS 平台中的字符串截取函数 str_cut 的使用方法,该函数常用于控制输出的标题或内容摘要长度,有效避免因过长的文本导致的页面布局问题。通过本文,读者将掌握如何灵活运用此函数,包括处理 HTML 标签等高级技巧。 ... [详细]
  • 在使用Maven进行项目构建时,由于依赖库的下载速度慢常常让人感到沮丧,这直接影响了开发效率和学习热情。幸运的是,阿里云提供了一个快速的国内镜像服务,能够显著提升Maven项目的构建速度。 ... [详细]
  • JavaWeb技术架构解析
    本文探讨了JavaWeb开发中客户端与服务器端的交互模式,重点分析了B/S(浏览器/服务器)和C/S(客户端/服务器)两种架构的特点及应用场景。 ... [详细]
  • 本文介绍了如何使用JavaScript和jQuery实现页面元素随着滚动条的移动而相应变化位置的功能,提供了一段简洁的代码示例。 ... [详细]
  • 无论是初学者还是经验丰富的开发者,W3CSchool都是一个不可或缺的资源库。本文将介绍几个关键的学习资源,帮助您提升网页开发技能。 ... [详细]
  • 探索Squid反向代理中的远程代码执行漏洞
    本文深入探讨了在网站渗透测试过程中发现的Squid反向代理系统中存在的远程代码执行漏洞,旨在帮助网站管理者和开发者了解此类漏洞的危害及防范措施。 ... [详细]
author-avatar
芦子根_889
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有