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

python概述_Python的概述

官网:https:www.python.org诞生:1989年底诞生,1990年V1发布,2000年V2发布,

官网:https://www.python.org/

诞生:1989年底诞生,1990年V1发布,2000年V2发布,2008年V3发布(不兼容V2),2017年随着AI的崛起而流行

特点:简单、跨平台、应用广泛、解释执行、运行速度并不快

应用领域:运维、爬虫、桌面应用、科学运算、Web应用、AI

3.搭建Python开发环境

下载并安装Python解释器

下载地址:https://www.python.org/downloads/windows/

注意:默认安装路径的地址不在C:/Program Files;此处必须勾选Add Python to PATH —— 否则无法直接在命令行执行python命令

1820850-20200425213743189-78425726.png

Python两种运行模式:

①交互式执行:输入一行回车执行一行——适合测试

直接在命令行输入python进入交互模式;

输入一行命令,回车,立即执行;

退出交互式环境,输入quit()或者exit();

②脚本式执行:一次性执行某个文件中的所有语句——真正项目

把所有语句书写在一个.py文件中,交给python解释器一次性执行:

python x.py

C系:C、C++、C#、Java、PHP、JS

Python不属于C系语言

Python基础语法说明:

①语句后可以写分号也可以不写

②严格区分大小写 (常见语言中,只有SQL不区分大小写!)

③Python不使用//和/**/做注释;换为:

#单行注释内容

''' 多行注释 '''

""" 多行注释 """

④Python中一行语句开头决不能随意添加空格/TAB——空白字符用于表示执行主体的开始和结束!

4.Python的变量和常量

创建变量: uname = 'dangdang'

查看变量类型: print( type(uname))

输出变量: print( uname )

修改变量: uname = 'dingding'

删除变量: deluname

说明:

①Python属于“弱类型语言”,变量不需要声明类型,可以先后赋值为不同类型的值

②变量名中可以包含数字、字母、下划线、汉字,但不能以数字开头

③Python有一些特殊预定义变量名,形如:__xxxx__,故自定义变量名不推荐使用此形式

④变量名不允许是系统关键字

⑤Python中没有声明常量的方法!没有const关键字

小知识:如何查看Python中的所有关键字:

在交互模式下,输入 help("keywords")

Python学习手册:https://docs.python.org/zh-cn/3/tutorial/index.html

Python API 参考: https://docs.python.org/zh-cn/3/library/index.html

5.Python中的数据类型

提示:不同语言间最大的差别在于“数据类型”,语言调性、应用领域往往都是由数据类型决定。

详细信息参考:https://docs.python.org/zh-cn/3/library/index.html

数字类型:

①int:整数,Python支持无限长度的整数!有全局转换函数int( )

②bool:布尔,Python认为bool是一种特殊的int:True等价于1;Flase等价于0!有全局转换函数bool()

③float:浮点数,类似于其它语言中的double类型!有全局转换函数float()

④complex:复数(有实部和虚部的数)

字符串类型:

⑤str:字符串,所有的字符串都是不可变的,有全局转换函数 str()

说明:字符串可用于单引号、双引号、三个单引号、三个双引号括起来;可以使用[i]获取指定下标处字符;[i : j]获取指定范围内的子串

序列类型:

⑥list:列表,用[ ], 元素可以改变的有序数组,有全局转换函数 list()

说明:列表的长度len(myList)、获取子列表myList[i:j]、添加新元素myList.push(i)、删除元素myList.pop()或者del myList[i]

⑦tuple:元组,用( ),元素不可改变的有序数组,有全局转换函数 tuple()

说明:元组的长度len(myTuple)、获取子元组myTuple[i:j],元组没有修改元素的方法

⑧range:范围,用range(), 元素是规律的数字数组,有全局转换函数 range(),如0/1/2/3/4/5、10/20/30/40、90/85/80/75/70,Python中没有经典的for循环,只能使用range对象模拟实现,创建方法:range(6)、range(10,50,10)、range(90,65, -5)

集合类型:

⑨set:集合,用{ }, 元素可以改变的无序数组,没有下标,有全局转换函数 set()

说明:集合中元素没有顺序、没有下标,也不允许重复;添加新元素mySet.add(值)、删除元素mySet.remove(值)

映射类型:

⑩dict:词典,用{ },元素可以改变的无序数组,下标是字符串,有全局转换函数 dict(),非常类似于JS中的“对象直接量”语法,但是下标必须用引号括起来!添加、修改、删除元素时,不能使用 . 语法,只能使用 [ ] 语法

6.Python中的运算符

①算术运算符:+-*/(除法)%(求余)//(求商)**(求幂)

说明://表示“求商运算”——不要余数,只要能整除的商部分;Python中没有++和--运算符!——Python中的数字都是“不可变的class类型”,无法在原地自加或自减。

②比较运算符&#xff1a;> >&#61; <<&#61; &#61;&#61; !&#61;

说明&#xff1a;Python中没有全等运算符&#61;&#61;&#61;和!&#61;&#61;&#xff0c;真想判断两个变量是否内存地址一样&#xff0c;使用id()运算符 或者 is/is not 即可

③逻辑运算符&#xff1a;and or not

说明&#xff1a;Python中不能使用&&、||、!

④位运算符&#xff1a;& | ^ ~ <<(按位左移) >>(按位右移)

⑤三目运算符&#xff1a;表达式2 if表达式1 else表达式3

注意&#xff1a;传统三目&#xff1a; 表达式1 ? 表达式2 : 表达式3

⑥赋值运算符&#xff1a;&#61; &#43;&#61; -&#61; *&#61; /&#61; %&#61; //&#61;

⑦特殊运算符&#xff1a;id(变量名)、 is和isnot(判断两个对象是否是同一个)

说明&#xff1a;id()运算符用于返回一个变量的编号(即内存地址)



推荐阅读
  • Redis底层数据结构之压缩列表的介绍及实现原理
    本文介绍了Redis底层数据结构之压缩列表的概念、实现原理以及使用场景。压缩列表是Redis为了节约内存而开发的一种顺序数据结构,由特殊编码的连续内存块组成。文章详细解释了压缩列表的构成和各个属性的含义,以及如何通过指针来计算表尾节点的地址。压缩列表适用于列表键和哈希键中只包含少量小整数值和短字符串的情况。通过使用压缩列表,可以有效减少内存占用,提升Redis的性能。 ... [详细]
  • 模板引擎StringTemplate的使用方法和特点
    本文介绍了模板引擎StringTemplate的使用方法和特点,包括强制Model和View的分离、Lazy-Evaluation、Recursive enable等。同时,还介绍了StringTemplate语法中的属性和普通字符的使用方法,并提供了向模板填充属性的示例代码。 ... [详细]
  • python中安装并使用redis相关的知识
    本文介绍了在python中安装并使用redis的相关知识,包括redis的数据缓存系统和支持的数据类型,以及在pycharm中安装redis模块和常用的字符串操作。 ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 本文介绍了使用postman进行接口测试的方法,以测试用户管理模块为例。首先需要下载并安装postman,然后创建基本的请求并填写用户名密码进行登录测试。接下来可以进行用户查询和新增的测试。在新增时,可以进行异常测试,包括用户名超长和输入特殊字符的情况。通过测试发现后台没有对参数长度和特殊字符进行检查和过滤。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • 本文介绍了RPC框架Thrift的安装环境变量配置与第一个实例,讲解了RPC的概念以及如何解决跨语言、c++客户端、web服务端、远程调用等需求。Thrift开发方便上手快,性能和稳定性也不错,适合初学者学习和使用。 ... [详细]
  • 本文详细介绍了Spring的JdbcTemplate的使用方法,包括执行存储过程、存储函数的call()方法,执行任何SQL语句的execute()方法,单个更新和批量更新的update()和batchUpdate()方法,以及单查和列表查询的query()和queryForXXX()方法。提供了经过测试的API供使用。 ... [详细]
  • 高质量SQL书写的30条建议
    本文提供了30条关于优化SQL的建议,包括避免使用select *,使用具体字段,以及使用limit 1等。这些建议是基于实际开发经验总结出来的,旨在帮助读者优化SQL查询。 ... [详细]
  • WebSocket与Socket.io的理解
    WebSocketprotocol是HTML5一种新的协议。它的最大特点就是,服务器可以主动向客户端推送信息,客户端也可以主动向服务器发送信息,是真正的双向平等对话,属于服务器推送 ... [详细]
  • 分享css中提升优先级属性!important的用法总结
    web前端|css教程css!importantweb前端-css教程本文分享css中提升优先级属性!important的用法总结微信门店展示源码,vscode如何管理站点,ubu ... [详细]
  • 背景应用安全领域,各类攻击长久以来都危害着互联网上的应用,在web应用安全风险中,各类注入、跨站等攻击仍然占据着较前的位置。WAF(Web应用防火墙)正是为防御和阻断这类攻击而存在 ... [详细]
  • Linux下部署Symfoy2对app/cache和app/logs目录的权限设置,symfoy2logs
    php教程|php手册xml文件php教程-php手册Linux下部署Symfoy2对appcache和applogs目录的权限设置,symfoy2logs黑色记事本源码,vsco ... [详细]
  • 第七课主要内容:多进程多线程FIFO,LIFO,优先队列线程局部变量进程与线程的选择线程池异步IO概念及twisted案例股票数据抓取 ... [详细]
author-avatar
蓝羽月妞妞
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有