(一) 初识python

news2024/12/25 9:11:10

1. python的特点:

  • 可读性强
    可读性远比听上去重要的多得多。一个程序会被反复的修改,可读性意味这让你可以在更短时间内学习和记忆,直接提高生产率。
  • 高效、简洁
    研究证明,程序员每天可编写的有效代码是有限的。完成同样功能只用一半的代码,其实就是提高了一倍的生产率。
    Python是由c语言开发,但是不再有c语言中指针等复杂数据类型,Python的简洁性让开发难度和代码大幅度降低,开发任务大大简化。程序员再也不需要关注复杂的语法,而是关注任务本身。
  • 面向对象
  • 免费且开源
  • 可移植性和跨平台
    Python会被编译成与操作系统相关的二进制代码,然后再解释执行。这种方式和java类似,大大提高了执行速度,也实现了跨平台。
  • 丰富的库(丰富的标准库,多种多样的扩展库)
  • 可扩展性。 可嵌入到C和C++语言。胶水式语言。

2. Python的应用范围:

  • 科学计算;
  • 人工智能;
  • WEB服务端和大型网站后端;
    YouTube、gmail等应用基于python开发;
  • GUI开发(图形用户界面开发)
  • 游戏开发
  • 移动设备
  • 嵌入式设备
  • 系统运维
  • 大数据
  • 云计算

3.什么时候不应该用Python

  • Python是解释执行,性能较低;
    因此,一些影响性能的功能可以使用C/C++/Java/Go(Go是一种新语言,写起来不像Python,性能像C)去开发;
    版本和兼容问题解决方案:
    目前主要两个版本:Python2和Python3
    Python2:
    2000年10月发布,最新版本是2.7,已经停止更新,不会再有2.8以后了。预计2020年回退出历史舞台;
    Python3:
    2008年发布,Python3有了较大的提升,不兼容Python2.
    兼容问题的解决:
  • Python3的很多新特性也被移植到Python2.7,作为过渡,如果程序可以在2.7运行,可以通过一个名为2to3(Python自带的一个脚本)的转换工具无缝迁移到Python3;
  • 建议从·Python3开始,毕竟这才是未来。

4. python的起源

  • 1989年,为了打发圣诞节假期,Gudio van Rossum吉多.范罗苏姆(龟叔)决心开发一个新的解释程序(python雏形);
  • 1991年,第一个python解释器诞生;
  • python这个名字的由来,来自龟叔所挚爱的电视剧Monty Python’s Flying Circus ;

5. 为什么选择python?

简单、易学、开发效率高;
适用面广泛;


6. 什么是编程语言?

  • 语言:进行沟通交流的表达方式;
  • 编程语言:编写程序的语言,用于和计算机进行交流;
  • 编程语言如何进行工作?
    用于人类和计算机进行交流的一种语言,通过编写编程语言的代码,去指挥计算机工作。
    它无法直接和计算机沟通,需要翻译工具(解释器或编译器)将代码翻译成二进制,从而实现和计算机的畅顺沟通;
  • 为什么不直接把中文翻译成二进制?
    自然语言远比编程语言复杂,编程语言语法"死板",“翻译官”更容易翻译;

7. python环境的安装

(1)windows版本

想要使用Python语言编写程序,我们必须下载Python安装包并配置Python环境,Python目前最新版本是:3.11.1 ;
本次课程就基于当前最新版本进行学习;

  • Python官网:python.org
  • 通过在windows网页,按键"windows+r “,输入"cmd"命令,在命令行输入"python”,如下图则表示python安装成功;
    在这里插入图片描述

(2)MacOS

基于MacOS 3.11.1

  • 同python在windows环境中的安装步骤;

(3) linux操作系统

基于CentOS7版本

  • 登录到Linux中,使用yum程序进行依赖程序安装,执行如下命令:
[root@python ~]# yum install wget zlib-devel  bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make zlib zlib-devel libffi-devel -y
  • 下载Python3.11.1版本并解压;
wget https://www.python.org/ftp/python/3.11.1/Python-3.11.1.tgz
tar -xvf Python-3.11.1.tgz
  • 进入解压后的目录,对python程序进行编译及安装;
cd Python-3.11.1
./configure --prefix=/usr/local/python3.11.1
make && make install

在这里插入图片描述

  • 执行"/usr/bin/python"命令,可以看见Linux系统自带python语言版本为2.7.5,因此需要删除Linux系统自带python版本,并将下载的python3.11.1版本做软连接到Linux系统:
/usr/bin/python
rm -f /usr/bin/python
ln -s /usr/local/python3.11.1/bin/python3.11 /usr/bin/python

在这里插入图片描述

  • 当Linux系统通过软连接到python3.11.1版本,需要修改相关文件以同步相关配置;
vim /usr/libexec/urlgrabber-ext-down
 vim /usr/bin/yum

将以上两个文件内容第一行修改为"#! /usr/bin/python2" ;执行"python"命令如下图即表示python环境安装成功;
在这里插入图片描述


8. 第一个python程序

  • 向世界说你好,应该是全世界,所有程序员入门编程语言时,都会选择的第一个程序。
  • 让我们延续这一份来自程序员之间的浪漫,学习如何使用Python,向世界说你好。
    在这里插入图片描述

9. python解释器

Python程序的执行依赖于Python解释器。常用的Python解释器有:
(1)CPython
使用C语言实现的解释器,最常用的解释器。通常说的解释器指的就是它。
(2)JPython
使用java语言实现的解释器。JPython可以直接调用java类库,适合在java平台上开发;
(3)IronPython
.NET平台上使用的解释器。可直接·调用.NET平台的类;
(4)PyPy
使用Python语言实现的解释器


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/126196.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

浙大MBA复试经验分享——复试备考流程及要点提醒

最近身边有很多小伙伴都在咨询关于复试的问题,趁着今天有空把我的复试准备过程按照时间线梳理出来分享给大家,希望可以帮助到大家。 联考结束后,趁着考完印象还深刻,我们首先要做的就是估分(辅导班或者小红书、知…

【06】概率图推断之变量消除算法

概率图推断之变量消除算法 文章目录说明性示例消除变量因子因子运算排序变量消除算法举例证据变量消除的时间复杂度选择变量消除顺序接下来,我们将注意力转向图模型中的推断问题。 给定概率模型(如贝叶斯网络或马尔可夫随机场),…

开个脑洞,带你写一个自己的极狐GitLab CI Runner

极狐GitLab Runner 是极狐GitLab CI/CD 执行的利器,能够帮助完成 CI/CD Pipeline Job 的执行。 目前极狐GitLab Runner 是一个开源项目,以 Golang 编写。 极狐Gitlab 有个不错的特性,就是你可以使用自己的极狐Gitlab CI Runner。可是&#xf…

Oracle 单实例如何开机自启动

作者 | JiekeXu来源 |公众号 JiekeXu DBA之路(ID: JiekeXu_IT)如需转载请联系授权 | (个人微信 ID:JiekeXu_DBA)大家好,我是 JiekeXu,很高兴又和大家见面了,今天和大家一起来看看 Oracle 单实例如何开机自启动,欢迎点击…

盘点JAVA程序猿必备的webserver

作为java工程师,除了必备的java编程能力,我们还需要些什么呢? 一般而言,要从工程师进化为构架师,一个合格的java工作者需要掌握一些关于构架的知识, 比如互联网的结构,服务器的建设&#xff0c…

PhotoShop入门

PhotoShop入门 零、文章目录 文章地址 个人博客-CSDN地址:https://blog.csdn.net/liyou123456789个人博客-GiteePages:https://bluecusliyou.gitee.io/techlearn 代码仓库地址 Gitee:https://gitee.com/bluecusliyou/TechLearnGithub&am…

JAVA结构、循环语句

一、 if选择结构 代码示例: int num 1;if (num 1) {System.out.println("壹");} else if (num 2) {System.out.println("贰");} else if (num 3) {System.out.println("参");}输出: 壹 二、switch结构 1.switch 会根…

HNU编译原理实验四cminus_compiler-2022-fall

前言:原本想认认真真把这个实验给完成的,但是当时时间太赶了,一周要做三个实验,所以这次实验基本都是抄的了,有些地方也抄的不明不白,不过懂不懂这个对课程学习的帮助并不是很大,毕竟这个实验的…

vue 弹窗 惯性滚动 加速滚动

惯性滚动组件 新建文件 components/scroll-viwe <template><div v-if"visiable"><div class"mapbox-result-scroll-hidden"><div class"mapbox-result-wrap" ref"resultWrap"><div class"mapbox-resu…

服务了可口可乐、海底捞、某头部商业银行,我有这些体会

我非常喜欢巴西队的内马尔&#xff0c;他曾说&#xff1a;“你可能会看到我一秒钟、一分钟、一天不开心&#xff0c;但第二天你会看到我的笑脸。” 在 Authing 工作两年多了&#xff0c;在这期间&#xff0c;我为可口可乐、海底捞、某头部商业银行等客户做了交付&#xff0c;在…

jq实现倒计时功能

效果如下&#xff1a; 代码如下&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>jq实现…

10 IO实例

IO 1 流 流可以认为是一条通道&#xff0c;它可以将数据从源端传送到目的地。 例如将程序中的某些数据写入文件&#xff0c;或将文件中的某些数据读入程序。 Java中数据的操作是以“流”的方式进行。 Java中的“流”是一个具体的Java对象&#xff0c;该对象提供一些方法进行…

组件的概念

文章目录组件&#xff1f;从UI层面看组件化组件&#xff1f; 等下&#xff0c;你有没有留意到我说了一个很关键的词&#xff0c;叫组件。组件&#xff1f;直观的理解组件是一个什么东西&#xff1f;可拼接&#xff0c;可组合&#xff0c;搭积木&#xff0c;乐高积木? 对&…

Springboot定时任务调度的实现原理

前言 源码的世界是一片汪洋大海&#xff0c;springboot的源码更是如此&#xff0c;虽然用的时候似乎很简单&#xff0c;然而正是因为其内部的设计巧妙、复杂&#xff0c;才造就了其使用上的简单易上手。罗马不是一天建起来的&#xff0c;要完全理解它也并非一时的事&#xff0c…

webdriver的尝试:一 【webdriver自动打开浏览器与页面】

文章目录Webdriver尝试使用步骤1&#xff1a;安装类库2&#xff1a;安装驱动3&#xff1a;配置环境3&#xff1a;编写脚本4&#xff1a;执行脚本Webdriver 网站地址 Selenium webdriver 简单介绍&#xff1a;webdriver是一个api和协议。支持多种语言。主要功能&#xff0c;通…

大米新闻微信小程序和Springboot新闻管理系统项目源码

介绍 本项目分为大米news小程序端和springboot新闻管理系统后台项目。小程序主要用来新闻展示&#xff0c;后台管理系统用于提供相关新闻API。 项目源码 参考&#xff1a;https://www.bilibili.com/video/BV1TD4y1j7g3/?spm_id_from333.337.search-card.all.click&vd_s…

day08 常用API

1.API 1.1 API概述-帮助文档的使用 什么是API ​ API (Application Programming Interface) &#xff1a;应用程序编程接口 java中的API ​ 指的就是 JDK 中提供的各种功能的 Java类&#xff0c;这些类将底层的实现封装了起来&#xff0c;我们不需要关心这些类是如何实现的&a…

两个链表的第一个公共结点

今天为大家带来一道题目&#xff1a; 这个题目先来看看我自己写的错误版本 public class Solution {public ListNode FindFirstCommonNode(ListNode pHead1, ListNode pHead2) {ListNode tmp1pHead1;ListNode tmp2pHead2;while(pHead1!null&&pHead2!null){ListNode cur…

Axure8.0动态面板使用

Axure动态面板是最常使用的&#xff0c;今天我们就来详细介绍一下。 动态面板是Axure中一个非常强大的高级元件&#xff0c;用于实现多个状态的切换展示&#xff0c;可以将其看成一个容器&#xff0c;可以容纳多种不同状态&#xff0c;通过各种交互触发其状态发生变化。 通过以…

年终盘点丨2022边缘计算大事记

2022年进入尾声了&#xff0c;每年到了年底&#xff0c;边缘计算社区都会盘点过去一年边缘计算领域发生的值得您关注的事情。今年的边缘计算领域发生很多不一样的精彩&#xff1a;加强面向特定场景的边缘计算能力刷屏一整年&#xff0c;安波福43亿美元收购风河&#xff0c;全球…