Python——第一章:语言介绍
随着Python的语言在世界受欢迎程度持续高涨,如今也成功夺得了第一的宝座。
在计算机领域,没有谁(诺基亚、微软、苹果、亚马逊等等)能永远稳坐第一,随着时间更迭,就会推陈出新,一定会有更好的、更先进的语言、系统、算法出现。在IT界,这种现象会一直周而复始的存在。
世界上的编程语⾔言有600多种,但真正大家主流在使⽤用的最多二、三十种,不同的语言有自己的特点和擅长领域,随着计算机的不断发展,新语言在不断诞生,也同时有很多老旧的语言慢慢无人用了。有个权威的语言排名网站,可以看到主流的编程语言都有哪些。
编程语言排名网站:
http://www.tiobe.com/tiobe-index
https://hellogithub.com/report/tiobe
不同语言的优势也完全不同,不同的场景需要选择不同的语言:
比如:
- C语言具有高效性和灵活性,许多操作系统的内核是使用C语言编写的,包括Unix、Linux和Windows的部分组件。还有大型游戏,在嵌入式图形和游戏开发中也得到广泛应用。
- Java语音适合大型的工业软件开发,ERP这类产品和大型网站等——如淘宝。Java是Android平台上主要的编程语言。通过使用Java和Android开发工具包(Android SDK),您可以创建功能强大且兼容性广泛的Android应用程序。
- 甚至有的是定向功能的语言。比如R语言主做数据分析,Rust语言是专门为电梯设计开发的语言。
Python语言在软件开发领域中具有许多优点,特别是在以下方面:(摘自ChatGPT的解释)
简洁而易读的语法:Python拥有简洁、直观的语法,使得代码易于编写和阅读。它采用明确的语法结构和简洁的代码风格,使开发者能够更加专注于解决问题,而不是纠结于语法细节。
强大的标准库和第三方库:Python拥有广泛且强大的标准库,覆盖了各种领域,包括文件处理、网络通信、数据处理、图形界面等。此外,Python还拥有丰富的第三方库和框架,例如NumPy、Pandas、Django等,可帮助开发人员快速构建各种应用。
跨平台性:Python是一种跨平台的语言,可以在多个操作系统上运行,包括Windows、Linux、Mac等。这意味着开发的Python代码可以在不同平台上无需修改即可运行,提高了开发效率和可移植性。
快速开发和迭代:由于Python的语法简洁,以及丰富的库和工具支持,使用Python进行软件开发通常比其他语言更快速。开发人员可以迅速构建原型、实现功能并进行迭代,从而加快产品开发周期。
大型社区支持:Python拥有庞大的开源社区,有许多开发者和贡献者积极参与,共享代码、解决问题并提供支持。这意味着开发人员可以从社区中获得大量的资源、教程和解决方案,并且能够与其他开发者交流和合作。
数据科学和机器学习支持:Python在数据科学和机器学习领域非常流行。它拥有许多强大的库和工具,如NumPy、Pandas、SciPy、scikit-learn和TensorFlow,使得数据分析、机器学习和人工智能的开发变得更加便捷。
总之,Python语言以其简洁、易读、跨平台、快速开发和强大的库支持等优点,成为了许多开发者的首选语言。无论是构建Web应用、数据分析、科学计算还是人工智能,Python都提供了丰富的工具和生态系统,使得开发变得更加高效和愉快。
Python能做到业内领先具有如下几点重点优势:
1、开发效率第一(优势)
模块库很丰富,想用什么就有什么工具直接供你选用。
2、学习曲线第一(优势)
Python是最适合小白上手的语言,学习曲线由简入深,由易到难。
C语言是属于最难的语言,像指针、链表等,属于很难上手的语言
3、生态圈第一(优势)
Python自1989年诞生已30余年,在IT技术的各个领域的生态圈都发展的比较庞大,人工智能、数据分析、爬虫等功能都是以Python为首选开发语言,其他领域如游戏开发、Web开发,Python也比较强。软件开发、自动化开发、后端开发、图形化开发、科学运算等领域,也都全面开花,Python称为编程界的瑞士军刀(多功能较强)
对比去看PHP语言的没落,也是由于PHP几乎只能做网站,因此局限性相当大(虽然PHP也可以做爬虫、数据分析但是PHP本身并不擅长这些)
4、运行速度一般(弱势)
Python是一门动态的解释形语言,在执行过程中始终需要一个翻译(解释器),去翻译Python中各种代码,而再去命令底层硬件参与运算。因此他的运行速度并不快。
对比去看C语言(被称为最快的编程语言),C语言是直接与CPU、内存去沟通的,直接操作最底层硬件,他的运行速率肯定是更快,这也是C语言需要学习控制内存指针等困难的点。
C语言的运行速率大概是Python的10倍,但这些在Python的绝大多数脚本中,用户基本上算是感受不到的,这个就好比手机60Hz刷新和120Hz刷新率的区别。但是体系庞大的系统,还是能够体验出区别的,比如大型搜索引擎、大型网站,都会往C语言靠的。
Python主要应用领域
WEB开发——最火的Python web框架Django, 支持异步高并发的Tornado框架,短小精悍的flask,bottle, Django官方的标语把Django定义为the framework for perfectionist with deadlines(大意是:一个为完全主义者开发的高效率web框架)
网络编程——支持高并发的Twisted网络框架, py3引入的asyncio使异步编程变的非常简单。
爬虫——爬虫领域,Python几乎是霸主地位,Scrapy\Request\BeautifuSoap\urllib等,想爬什么爬什么。
云计算——目前最火最知名的云计算框架就是OpenStack,Python现在的火,很大一部分就是因为云计算。
人工智能、数据分析—— Python 是目前公认的人工智能和数据分析领域的必备语⾔
自动化运维——问问你认识的每个运维人员,运维人员必须会的语言是什么?10个人相信会给你一个相同的答案,它的名字叫Python(运维人员标配)。知名的运维工具Ansible\Saltstack都是Python写的。
金融分析——我个人在金融行业,2010年的时候,我们公司写的好多分析程序、高频交易易软件就是用的Python,到目前,Python是金融分析、量化交易领域里用的最多的语⾔。(C++也可以,难一些)
科学运算—— 97年开始,NASA就在大量使用Python在进行各种复杂的科学运算,随着NumPy,SciPy, Matplotlib, Enthought librarys等众多程序库的开发,使的Python越来越适合于做科学计算、绘制高质量的2D和3D图像。和科学计算领域最流行的商业软件Matlab相比,Python是一门通用的程序设计语言,比Matlab所采用的脚本语言的应用范围更广泛。
游戏开发——在网络游戏开发中Python也有很多应用。比如知名的游戏<文明>、网易易公司的《大话西游》 就是用Python写的
扩展:
为什么C语言的运行速度比Python快,大型搜索引擎大都会选择C语言开发而不是Python?(来自ChatGPT的解释)
C语言的运行速度比Python快主要是因为它是一种编译型语言,而Python是一种解释型语言。这两种语言的执行方式有所不同,导致了它们的性能差异。
编译型 vs. 解释型:C语言是编译型语言,它的代码在运行之前需要经过编译器的处理,将源代码转换成机器码,然后才能在计算机上执行。这个编译过程将代码转换为底层的二进制指令,因此执行速度非常快。Python则是解释型语言,它的代码在运行时由解释器逐行解释并执行。这个解释过程会导致Python的执行速度相对较慢。
静态类型 vs. 动态类型:C语言是一种静态类型语言,意味着在编译时需要指定变量的数据类型。这使得编译器能够进行更多的优化,并在执行时更快地处理数据。Python是一种动态类型语言,变量的数据类型是在运行时确定的,这导致了一些额外的运行时开销。
内存管理:C语言对内存管理具有更多的控制权,开发人员可以手动管理内存的分配和释放,这使得内存使用更加高效。Python使用自动内存管理(垃圾回收机制),这在一定程度上会带来一些性能开销。
虽然C语言在性能方面优于Python,但Python在其他方面具有优势,例如代码的可读性和开发速度。Python代码通常比C语言代码更易于理解和编写,这有助于提高开发人员的生产力。对于一些应用,性能可能不是首要考虑因素,而开发效率和可维护性更为重要。
至于大型搜索引擎为什么会选择C语言开发而不是Python,原因可能是为了追求更高的性能和效率。搜索引擎需要处理大量的数据和请求,对性能的要求非常高,使用C语言可以更好地满足这些要求。同时,大型搜索引擎可能会采用多种语言和技术的组合,针对不同的任务选择最适合的工具,以实现最佳的性能和可扩展性。
安装 - 稳定版(Stable Release)、不要安装 - 预发布版本(Pre-release)
这里还是建议3.9.12或3.9.13版本,因为版本老嘛(一年前发布的),所以第三方插件、版本支持较多。
下载后安装时谨记,勾选Add Python 3.9 to PATH(安装3.9到全局环境变量中)
选择自定义安装到指定路径,因为默认路径一层层太蛋疼了,而且后期不好找
Optional Fearures界面什么都不要刻意勾选,这里会自动勾选机器需要的,如果你的跟我的不一样,也不要改,就默认继续Next
这里谨记2点
1、勾选Install for all users
2、手写路径,这里可以手写,建议到C:\Python39
Install
安装完成,直接点Close
环境变量:
找到用户变量Path,
把Path中的WindowsApps(应用商店),修改为WindowsApps_bak
找到下面的系统变量,查看Path
这里就是刚刚选择“Install for all users”帮你自动添加的,此处把Python39和Scripts的路径都加入进来了
如果你没有勾选,就手动添加,并且上移置顶,参考上一图
这样你在任意用户、任意目录路径,都可以直接运行调用Python命令了(全局环境变量概念)
执行python
比如CMD中输入
python
print("hello world")
回显
hello world
如果你要执行py程序,你可以使用命令python+空格+路径python C:\Users\Sylar\Desktop\hello.py
或者你直接python+空格+鼠标拖拽近这个窗口,机器会自动帮你添加路径信息
Python——第一章:语言介绍的更多相关文章
- 简学Python第一章__进入PY的世界
#cnblogs_post_body h2 { background: linear-gradient(to bottom, #18c0ff 0%,#0c7eff 100%); color: #fff ...
- 《Getting Started with WebRTC》第一章 WebRTC介绍
<Getting Started with WebRTC>第一章 WebRTC介绍 本章是对WebRTC做概念性的介绍. 阅读完本章后.你将对下面方面有一个清晰的理解: . 什么 ...
- Mariadb第一章:介绍及安装--小白博客
mariadb(第一章) 数据库介绍 1.什么是数据库? 简单的说,数据库就是一个存放数据的仓库,这个仓库是按照一定的数据结构(数据结构是指数据的组织形式或数据之间的联系)来组织,存储的,我们可以 ...
- python第一章计算机基础
第一章 计算机基础 1.1 硬件 计算机基本的硬件由:CPU / 内存 / 主板 / 硬盘 / 网卡 / 显卡 / 显示器 等组成,只有硬件但硬件之间无法进行交流和通信. 1.2 操作系统 操作系统用 ...
- Python第一章-基础知识
第一章:基础知识 1.1 安装python. 直接官网下载最新的python然后默认安装就可以了,然后开始菜单里找到pyhton *.*.* Shell.exe运行python的交互shell ...
- python第一章:简介与安装--小白博客
Python简介 Python是一种计算机程序设计语言.是一种动态的.面向对象的脚本语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的.大型项 ...
- Java 螺纹第三版 第一章Thread介绍、 第二章Thread创建和管理学习笔记
第一章 Thread导论 为何要用Thread ? 非堵塞I/O I/O多路技术 轮询(polling) 信号 警告(Alarm)和定时器(Timer) 独立的任务(Ta ...
- 学习python 第一章
目录 第一章... 1 1:新建项目... 1 2:修改默认模板... 3 3:什么是变量... 3 4:重指向... 3 5:常量的表示... 4 6:格式化输出(三种方法)... 4 7:打印一个 ...
- python入门课程 第一章 课程介绍
1-1 Python入门课程介绍特点: 优雅.明确.简单适合领域: web网站和各种网络服务 系统工具和脚本 作为"胶水"语言把其他语言开发的模块包装起来方 ...
- python第一章练习题
本章总节 练习题 1.简述编译型与解释型语言的区别,且分别列出你知道的哪些语言属于编译型,哪些属于解释 编译型:把源代码编译成机器语言的可执行文件,程序执行的时候执行可执行文件即可. 优点:程序执行不 ...
随机推荐
- SQL Server查询数据库中的表
SQL Server查询数据库中的表 SSMS中用不了MySQL中的show 查询当前数据库中所有表名: SELECT name FROM sysobjects WHERE (xtype = 'U') ...
- 【RocketMQ】顺序消息实现总结
全局有序 在RocketMQ中,如果使消息全局有序,可以为Topic设置一个消息队列,使用一个生产者单线程发送数据,消费者端也使用单线程进行消费,从而保证消息的全局有序,但是这种方式效率低,一般不使用 ...
- Solution -「洛谷 P6156」简单题
Description Link. 求 \(\sum\limits_{i=1}^n\sum\limits_{j=1}^n(i+j)^kf(\gcd(i,j))\gcd(i,j)\). Solution ...
- 【解惑】时间规划,Linq的Aggregate函数在计算会议重叠时间中的应用
在繁忙的周五,小悦坐在会议室里,面前摆满了各种文件和会议安排表.她今天的工作任务是为公司安排下周的50个小会议,这让她感到有些头疼.但是,她深吸了一口气,决定耐心地一个一个去处理. 首先,小悦仔细地收 ...
- Python基础概要(一天快速入门)
文章目录 一 编程与编程语言 二 编程语言分类 三 主流编程语言介绍 四 Python介绍 五 安装python解释器 六 第一个python程序 七 变量 八 用户与程序交互 九 基本数据类型 十 ...
- linux常见命令(五)
用于文本内容处理的相关命令 sort uniq cut comm diff sort:对文件中数据进行排序,并将结果显示在标准输出上 命令语法:sort [选项] [文件] 选项 选项含义 -m 如果 ...
- 若依(ruoyi)开源系统保姆级实践-完成第一个页面
一.案例描述 若依官网文档地址:http://doc.ruoyi.vip/ruoyi/document/hjbs.html 本教程主要内容,自定义数据库表,使用若依开源系统生成代码并配置权限. 若依环 ...
- 深度学习 YOLO v1 源码+笔记
""" Yolo V1 by tensorflow """ import numpy as np import tensorflow._ap ...
- python爬虫入门(1)-开发环境配置
所谓的爬虫,就是通过模拟点击浏览器发送网络请求,接收站点请求响应,获取互联网信息的一组自动化程序. 也就是,只要浏览器(客户端)能做的事情,爬虫都能够做. 现在的互联网大数据时代,给予我们的 ...
- React 基础介绍以及demo实践
这篇文章是之前给新同事培训react基础所写的文章,现贴这里供大家参考: 1.什么是React? React 是一个用于构建用户界面的JavaScript库核心专注于视图,目的实现组件化开发 2.组件 ...