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线上问题的几种有效技术
工作后好久没上博客园了,虽然不是很忙,但也没学生时代闲了.今天上博客园,发现好多的文章都是年终总结,想想是不是自己也应该总结下,不过现在还没想好,等想好了再写吧.今天写写自己在工作后用到的技术干货,争 ...
随机推荐
- leetcode-wildcard matching-ZZ
http://yucoding.blogspot.com/2013/02/leetcode-question-123-wildcard-matching.html 几个例子: (1) acbdeabd ...
- linux中进入mysql时报错Access denied for user 'root'@'localhost' (using password: YES)解决方案
之前在linux中装完mysql后直接在命令行窗口输入mysql就会进入数据库了,但是今天输入mysql命令后直接报错,如下图: 之后输入:mysql -uroot -p 提示输入密码:***** 还 ...
- SAP Cloud for Customer里Sales Order和Sales Quote的建模方式
SAP Cloud for Customer的Sales工作中心里有Sales Quote和Sales Order两个视图,一个用于销售报价单,另一个用于销售订单. 流程上是先有报价单 ,报价单是一份 ...
- 使用ArcSDE SQL操作怎么获得新对象的objectid、GUID
arcgis9.3.1 现在大家很喜欢使用ArcSDE的SQL操作,这种方式在特殊的环境要求下显得比较方便,那么使用SQL操作最多的是读和写,而写最多的就是新建一个对象,那么翻译成SQL语言就是使用i ...
- mysqlslap执行基准测试
查看mysqlslap所支持的主要参数配置及说明如下 -a, --auto-generate-sql 由系统自动生成SQL脚本进行测试 Generate SQL where not supplied ...
- CentOS下go 安装
go 语言源码安装依赖 ,gcc ,make glibc库,等,上述工具安装省略,另外,其源代码更新采用的是mercurial 工具,安装前先安装mercureal : 1.mercurial安 ...
- 实用技巧:利用Excel实现客户档案的统一管理
背景: 一个朋友新开了家门市,生意不错,客源旺盛. 有次我们喝茶时,他透露一个问题,就是客户的档案管理很不理想,都是纸面的,很容易丢失,也不方便查找. 我自诩混迹IT界多年,当然要替好友解决这个小麻烦 ...
- Cow Relays 【优先队列优化的BFS】USACO 2001 Open
Cow Relays Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Tota ...
- 二十一、IntelliJ IDEA 控制台输出中文乱码问题的解决方法
首先,找到 IntelliJ IDEA 的安装目录,进入bin目录下,定位到idea.vmoptions文件,如下图所示: 双击打开idea.vmoptions文件,如下图所示: 然后,在其中追加-D ...
- 【Nginx】使用Nginx作为Http代理的配置文件
请看配置文件中的注释~ #user nobody; worker_processes 1; #pid logs/nginx.pid; events { worker_connections 1024; ...