python‘s first day for me
计算机的基础
1,计算机由硬件及软件组成。
其中硬件主要包括了cpu,内存以及硬盘。软件则由操作系统以及一系列软件。
操作系统则可以操控硬件,使硬件完成一些需要的操作。

python的历史
- 1989年,为了打发圣诞节假期,Guido开始写Python语言的编译器。Python这个名字,来自Guido所挚爱的电视剧Monty Python’s Flying Circus。他希望这个新的叫做Python的语言,能符合他的理想:创造一种C和shell之间,功能全面,易学易用,可拓展的语言。
- 1991年,第一个Python编译器诞生。它是用C语言实现的,并能够调用C语言的库文件。从一出生,Python已经具有了:类,函数,异常处理,包含表和词典在内的核心数据类型,以及模块为基础的拓展系统。
- Granddaddy of Python web frameworks, Zope 1 was released in 1999
- Python 1.0 - January 1994 增加了 lambda, map, filter and reduce.
- Python 2.0 - October 16, 2000,加入了内存回收机制,构成了现在Python语言框架的基础
- Python 2.4 - November 30, 2004, 同年目前最流行的WEB框架Django 诞生
- Python 2.5 - September 19, 2006
- Python 2.6 - October 1, 2008
- Python 2.7 - July 3, 2010
- In November 2014, it was announced that Python 2.7 would be supported until 2020, and reaffirmed that there would be no 2.8 release as users were expected to move to Python 3.4+ as soon as possible
- Python 3.0 - December 3, 2008
- Python 3.1 - June 27, 2009
- Python 3.2 - February 20, 2011
- Python 3.3 - September 29, 2012
- Python 3.4 - March 16, 2014
- Python 3.5 - September 13, 2015
- Python 3.6 - December 16,2016
python崇尚优美,清晰,简单,是一个优秀并广泛的语言。
python2x和python3x的区别:
python2x:源码混乱,重复代码较多,冗余。
python3x:源码规范,崇尚优美清晰编程语言的
编程语言的大体分类。
解释型:当程序运行时,将代码一行一行的解释成二进制编码,再运行。
优点:排错快,开发效率高,可以跨平台。
缺点:执行效率相对低。
典型语言:python
编译型:一次性的将所有代码编译成二进制编码,再运行程序。
优点:执行效率高。
缺点:排错慢,开发效率低,不可以跨平台。
典型语言:C语言。
python与其他语言之间的转换规则

CPython
当我们从Python官方网站下载并安装好Python 3.6后,我们就直接获得了一个官方版本的解释器:CPython。这个解释器是用C语言开发的,所以叫CPython。在命令行下运行python就是启动CPython解释器。
CPython是使用最广的Python解释器。教程的所有代码也都在CPython下执行。
IPython
IPython是基于CPython之上的一个交互式解释器,也就是说,IPython只是在交互方式上有所增强,但是执行Python代码的功能和CPython是完全一样的。好比很多国产浏览器虽然外观不同,但内核其实都是调用了IE。
CPython用>>>作为提示符,而IPython用In [序号]:作为提示符。
PyPy
PyPy是另一个Python解释器,它的目标是执行速度。PyPy采用JIT技术,对Python代码进行动态编译(注意不是解释),所以可以显著提高Python代码的执行速度。
绝大部分Python代码都可以在PyPy下运行,但是PyPy和CPython有一些是不同的,这就导致相同的Python代码在两种解释器下执行可能会有不同的结果。如果你的代码要放到PyPy下执行,就需要了解PyPy和CPython的不同点。
Jython
Jython是运行在Java平台上的Python解释器,可以直接把Python代码编译成Java字节码执行。
IronPython
IronPython和Jython类似,只不过IronPython是运行在微软.Net平台上的Python解释器,可以直接把Python代码编译成.Net的字节码。
小结:
Python的解释器很多,但使用最广泛的还是CPython。如果要和Java或.Net平台交互,最好的办法不是用Jython或IronPython,而是通过网络调用来交互,确保各程序之间的独立性。
运行第一个python程序
1.创建一个*.py文件
2.进入cmd终端
3.python 文件路径 回车
python2x与python3x运行程序的操作区别:
python2x: print('内容') 或者 print '内容'.
python3x: print('内容')
python2x: 默认编码ASCII(解决不能输出中文的方法在首行加上 # -*- encoding:utf-8 -*-)
python3x: utf-8
变量
1,变量必须有数字,字母,下划线任意组合。
2,变量不能以数字开头。
3,变量不能是python中的关键字。 ['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda','not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
定义变量的方式:
1.驼峰体:
AgeOfOldboy=56
2.加下划线:
age_of_oldboy=56
常量
常量即指不变的量,例如:π 3.141592653...,或者在程序运行中不会改变的量。
python规定中没有常量,默认全部大写的变量为常量。
例如:BIRTH=19960102
在C语言中有专门的常量定义语法,const int count = 60;一旦定义为常量,更改即会报错。
注释
编程中,注释是其中重要的一部分,因为它不仅可以提示你自己代码的作用,而且可以提示其他人轻易的看懂你所设置的变量。
单行注释: #后面跟注释内容
多行注释: '''注释内容''' 或者 """注释内容"""
字符串之间是可以相加或者相乘:
例如:
n1='老男孩'
n2='是一个培训机构'
n3=n1+n2
print(n3)
i='好好学习'
print(i*8)
基础数据类型
1.int(整型)
在32位机器上,整数的位数是32位,取值范围 -2**31 ~ -2**31-1,即 -2147483648 ~ 2147483647
2.long(长整形)
跟C语言不同,Python的长整数没有指定位宽,即:python没有限制长整数数值的大小,但实际上由于机器内存有限,所以我们使用的长整数数值不可能无限大。
注意: 在python3里不再有long类型了,全是int.
3.str(字符串类型)
在python中,加了引号的字符都被认为是字符串。
4.布尔型(bool)
布尔型很简单,就两个:True(真), False(假) 主要用于逻辑判断。
type()-------> 判断此数据是什么数据类型
程序交互
input 用户交互,输入的全部是字符串类型
python2x : raw_input()
python3x :input()
name=input('请输入你的姓名:')
print(name,type(name))
python数据类型之间的转换
数据类型与字符串类型之间的转换:
int--------->str str(12)=='12'
str--------->int int('12')==12
if 循环结构
1.第一种结构
if 条件:
结果
2.第二种结构:
if 条件:
结果
else:
结果
3.第三种结构
choice=input('请输入你猜的数字')
if choice == '':
print('今天是周二')
elif choice == '':
print('今天是周四')
elif choice == '':
print('今天是周六')
else:
print('选择错误..')
4.第四种结构
if 条件:
if 条件:
结果
else:
结果
else:
结果
while 语句。
while 条件:
结果
跳出循环的条件:
1.改变条件
2.break.
i=1
while True:
print(i)
i=i+1
if i==101:
break
break:结束循环。
continue: 结束本次循环,继续下一次循环。
i=0
while i< 10:
i=i+1
if i = 7:
continue
print(i)
python‘s first day for me的更多相关文章
- 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线上问题的几种有效技术
工作后好久没上博客园了,虽然不是很忙,但也没学生时代闲了.今天上博客园,发现好多的文章都是年终总结,想想是不是自己也应该总结下,不过现在还没想好,等想好了再写吧.今天写写自己在工作后用到的技术干货,争 ...
随机推荐
- 向量点积(Dot Product),向量叉积(Cross Product)
参考的是<游戏和图形学的3D数学入门教程>,非常不错的书,推荐阅读,老外很喜欢把一个东西解释的很详细. 1.向量点积(Dot Product) 向量点积的结果有什么意义?事实上,向量的点积 ...
- 深度学习(七十)darknet 实现编写mobilenet源码
一.添加一个新的网络层 (1)parse.c文件中函数string_to_layer_type,添加网络层类型解析: if (strcmp(type, "[depthwise_convolu ...
- python caffe 在师兄的代码上修改成自己风格的代码
首先,感谢师兄的帮助.师兄的代码封装成类,流畅精美,容易调试.我的代码是堆积成的,被师兄嘲笑说写脚本.好吧!我的代码只有我懂,哈哈! 希望以后代码能写得工整点.现在还是让我先懂.这里,我做了一个简单的 ...
- 【排序】冒泡排序,C++实现
原创文章,转载请注明出处! 博客文章索引地址 博客文章中代码的github地址 # 基本思想(从小到大排序) 对于给定的n个元素,从第一个元素开始,依次对相邻的两个元素进行比较,当前面的记 ...
- Spring 学习笔记(一)
# IOC, DI # ApplicationContext.xml 描述类之间的依赖注入关系 # 初始化Bean工厂的两种方式 ## ClassPathXmlApplicationContext # ...
- 每天一个linux命令(文件操作):【转载】find 命令的参数详解
find一些常用参数的一些常用实例和一些具体用法及注意事项. 1.使用name选项: 文件名选项是find命令最常用的选项,要么单独使用该选项,要么和其他选项一起使用.可以使用某种文件名模式来匹配文件 ...
- 51nod 1600 Simple KMP【后缀自动机+LCT】【思维好题】*
Description 对于一个字符串|S|,我们定义fail[i],表示最大的x使得S[1..x]=S[i-x+1..i],满足(x<i) 显然对于一个字符串,如果我们将每个0<=i&l ...
- mysql 关联左表不存在数据 并 根据身份证计算查找大于65岁以上老人
--- //查找左边不存在数据,不能用 = '' SELECT m.uid FROM es_members m LEFT JOIN es_user_self_care_assessment u ON ...
- c++深拷贝/浅拷贝
拷贝构造函数,是一种特殊的构造函数,它由编译器调用来完成一些基于同一类的其他对象的构建及初始化.其唯一的参数(对象的引用)是不可变的(const类型).此函数经常用在函数调用时用户定义类型的值传递及返 ...
- Linux 利用busybox制作根文件系统
busybox版本:1.17.3 官网下载路径:https://busybox.net/downloads/ 网盘下载路径:https://pan.baidu.com/s/1nvrEa73 密码:7y ...