1.Python是什么
前言
这里只是根据个人的理解而谈,庸俗浅薄,不是科学定义,也可以认为是假装自己理解啦,掩耳盗铃罢了。知无涯是多么的恐怖,哈哈
计算机语言
此处的语言不同于我们生活中所说的语言,因为生活中的语言是我们表达思想和情感的一套符号系统,是由语音、语法、和词汇所组成的一个个句子。而计算机语言呢也有相似之处,但是,可以将它理解得更加简单:它就是一堆向计算机发出的指令。
python是什么?
按照直什么的逻辑,Python是一门计算机语言,那么python也是一堆指令集合。我知道,有人已经知道它是什么样的了,但还想知道它为什么是这个样子,不过我认为如果是像我这样的初学者,一定要去了解真相,就好像普通群众要去搞懂什么相对论一样,不过也好理解,探窥真相是人的天性嘛。不扯了···
先不管为什么,剩下的就是是什么了。所以下面要说的就是这堆指令是什么样的。
1. 编写第一个python程序
几乎所有的教程都会这样描述,打开IDLE,新建一个.py文件,命名为hello,输入print('hello, world!')
print('hello, world!')
然后运行程序,或者在交互解释器上直接输入,解释器就会自动打印出
hello, world!
这个hello.py文件,就是一个python程序,也就是前面说的指令集合。这里的print就是一个指令函数,而'hello, world!',是一个字符串,表示在屏幕上显示的一段文本,计算机执行这段指令,屏幕便会显示出'hello,world!'这段文本。
2. python程序的组成
当然,上面只是一个简短的程序,实际上python程往往会包含很多的模块,类,函数,字符串,逻辑语、布尔值······,这就是许多教程都会介绍的一系列python相关的东西。也是我们需要掌握的东西。这不是一两句话可以一概而足的。
3. python程序是如何运行的?
程序写好了,那么python程序到底是如何运行的呢?反正我是没看见过它"运“,也没见过”行“。其实程序从运行到得到结果经历这么一个过程:

这图描述的是当我们的程序(即源程序)开始运行的时候,首先会被转换为字节码(因为计算机并不能直接识别python源码,只有转换为计算机能识别的符号,计算机才能执行程序指令),生成pyc文件,这个文件如果程序运行前已经生成,那么在源文件没有变化的情况下是不会再生成,而是直接载入,然后字节码会被发送到虚拟机PVM中执行指令。要说明的是这里的字节码不是cpu码(二进制码),但是是计算机能读懂的指令。嗯,详细的内容请参考python学习手册第二章程序执行这一节。
1.Python是什么的更多相关文章
- Python中的多进程与多线程(一)
一.背景 最近在Azkaban的测试工作中,需要在测试环境下模拟线上的调度场景进行稳定性测试.故而重操python旧业,通过python编写脚本来构造类似线上的调度场景.在脚本编写过程中,碰到这样一个 ...
- Python高手之路【六】python基础之字符串格式化
Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[PEP-3101] This ...
- Python 小而美的函数
python提供了一些有趣且实用的函数,如any all zip,这些函数能够大幅简化我们得代码,可以更优雅的处理可迭代的对象,同时使用的时候也得注意一些情况 any any(iterable) ...
- JavaScript之父Brendan Eich,Clojure 创建者Rich Hickey,Python创建者Van Rossum等编程大牛对程序员的职业建议
软件开发是现时很火的职业.据美国劳动局发布的一项统计数据显示,从2014年至2024年,美国就业市场对开发人员的需求量将增长17%,而这个增长率比起所有职业的平均需求量高出了7%.很多人年轻人会选择编 ...
- 可爱的豆子——使用Beans思想让Python代码更易维护
title: 可爱的豆子--使用Beans思想让Python代码更易维护 toc: false comments: true date: 2016-06-19 21:43:33 tags: [Pyth ...
- 使用Python保存屏幕截图(不使用PIL)
起因 在极客学院讲授<使用Python编写远程控制程序>的课程中,涉及到查看被控制电脑屏幕截图的功能. 如果使用PIL,这个需求只需要三行代码: from PIL import Image ...
- Python编码记录
字节流和字符串 当使用Python定义一个字符串时,实际会存储一个字节串: "abc"--[97][98][99] python2.x默认会把所有的字符串当做ASCII码来对待,但 ...
- Apache执行Python脚本
由于经常需要到服务器上执行些命令,有些命令懒得敲,就准备写点脚本直接浏览器调用就好了,比如这样: 因为线上有现成的Apache,就直接放它里面了,当然访问安全要设置,我似乎别的随笔里写了安全问题,这里 ...
- python开发编译器
引言 最近刚刚用python写完了一个解析protobuf文件的简单编译器,深感ply实现词法分析和语法分析的简洁方便.乘着余热未过,头脑清醒,记下一点总结和心得,方便各位pythoner参考使用. ...
- 关于解决python线上问题的几种有效技术
工作后好久没上博客园了,虽然不是很忙,但也没学生时代闲了.今天上博客园,发现好多的文章都是年终总结,想想是不是自己也应该总结下,不过现在还没想好,等想好了再写吧.今天写写自己在工作后用到的技术干货,争 ...
随机推荐
- Xwiki安装部署详解
一.Xwiki简介XWiki是一个由Java编写的基于LGPL协议发布的开源wiki和应用平台.XWiki是一款基于java所编写的wiki,它可以运行在如Tomcat,Jetty,JBoss,Web ...
- 玩转Windows/Linux tftp命令
tftp很好理解, 主要用来传文件, 下面以我的操作来谈谈tftp中最重要的几个命令. 一. Windows上的sftp命令(据说Linux上也是这样, 当然此处是指非嵌入式的Linux) 步骤: a ...
- TortoiseGit基本操作
使用之前需要下载git for windows,tortoisegit . 1.TortoiseGit使用与操作 1.1克隆 打开一个要存放项目的文件夹下,右键Git Clone...进行克隆 弹出克 ...
- ZT————pull push mode
谁能讲讲push和pull模式是什么意思?(参与有分) [问题点数:100分,结帖人mickeyfirst] 收藏 mickeyfirst mickeyfirst 等级: 结帖率:94.12% 楼主 ...
- 【[AHOI2005]航线规划】
树剖维护边双 首先我们看到在整个过程中图是保证连通的,于是我们并不需要LCT来维护连通性 而这些询问询问的是两个点之间关键路径的数量,也就是无论怎么走都必须走的数量,显然这就是两点之间的割边的数量 由 ...
- protobuf编码
proto2 Protocol Buffers 是一种轻便高效的结构化数据存储格式,可以用于结构化数据序列化,适合做数据存储或 RPC 数据交换格式.可用于通讯协议.数据存储等领域的语言无关.平台无 ...
- 使用 PHP Curl 做数据中转
流程 收集头部信息 收集请求数据 转换头部信息为 CURL 头部请求格式 使用 Curl 进行转发 收集 HTTP 头信息 function getAllHeaders() { $headers = ...
- .net mvc 路由
Asp.net Mvc之Action如何传多个参数 在Global.asax文件中,默认路由如下. routes.MapRoute( "Default", // 路由名称 &quo ...
- Nodejs与mysql连接池的应用(pool)
/* * 连接池 连接和缓存的技术 * */ var mysql = require('mysql'); var pool = mysql.createPool({ connectionLimit:2 ...
- write函数过程解析
write函数作为用户向终端或者文件进行写数据的重要函数,有着重要的作用. |------| |---------| |---------| |----------| | wri ...