计算机的基础

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 增加了 lambdamapfilter 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的更多相关文章

  1. Python中的多进程与多线程(一)

    一.背景 最近在Azkaban的测试工作中,需要在测试环境下模拟线上的调度场景进行稳定性测试.故而重操python旧业,通过python编写脚本来构造类似线上的调度场景.在脚本编写过程中,碰到这样一个 ...

  2. Python高手之路【六】python基础之字符串格式化

    Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[PEP-3101] This ...

  3. Python 小而美的函数

    python提供了一些有趣且实用的函数,如any all zip,这些函数能够大幅简化我们得代码,可以更优雅的处理可迭代的对象,同时使用的时候也得注意一些情况   any any(iterable) ...

  4. JavaScript之父Brendan Eich,Clojure 创建者Rich Hickey,Python创建者Van Rossum等编程大牛对程序员的职业建议

    软件开发是现时很火的职业.据美国劳动局发布的一项统计数据显示,从2014年至2024年,美国就业市场对开发人员的需求量将增长17%,而这个增长率比起所有职业的平均需求量高出了7%.很多人年轻人会选择编 ...

  5. 可爱的豆子——使用Beans思想让Python代码更易维护

    title: 可爱的豆子--使用Beans思想让Python代码更易维护 toc: false comments: true date: 2016-06-19 21:43:33 tags: [Pyth ...

  6. 使用Python保存屏幕截图(不使用PIL)

    起因 在极客学院讲授<使用Python编写远程控制程序>的课程中,涉及到查看被控制电脑屏幕截图的功能. 如果使用PIL,这个需求只需要三行代码: from PIL import Image ...

  7. Python编码记录

    字节流和字符串 当使用Python定义一个字符串时,实际会存储一个字节串: "abc"--[97][98][99] python2.x默认会把所有的字符串当做ASCII码来对待,但 ...

  8. Apache执行Python脚本

    由于经常需要到服务器上执行些命令,有些命令懒得敲,就准备写点脚本直接浏览器调用就好了,比如这样: 因为线上有现成的Apache,就直接放它里面了,当然访问安全要设置,我似乎别的随笔里写了安全问题,这里 ...

  9. python开发编译器

    引言 最近刚刚用python写完了一个解析protobuf文件的简单编译器,深感ply实现词法分析和语法分析的简洁方便.乘着余热未过,头脑清醒,记下一点总结和心得,方便各位pythoner参考使用. ...

  10. 关于解决python线上问题的几种有效技术

    工作后好久没上博客园了,虽然不是很忙,但也没学生时代闲了.今天上博客园,发现好多的文章都是年终总结,想想是不是自己也应该总结下,不过现在还没想好,等想好了再写吧.今天写写自己在工作后用到的技术干货,争 ...

随机推荐

  1. 为Linux服务器的SSH登录启用Google两步验证

    对于Linux服务器而言使用密钥登录要比使用密码登录安全的多,毕竟当前网上存在多个脚本到处进行爆破. 这类脚本都是通过扫描IP端的开放端口并使用常见的密码进行登录尝试,因此修改端口号也是非常有必要的. ...

  2. day3 文件系统 内核模块 ctags

    nfs网络文件系统 smb   修改配置文件  sudo  vim /etc/samba/smb.conf    重启服务   /etc/init.d/samba restart 自制小的文件系统 1 ...

  3. Linux文件传输scp和rsync断点续传

    scp 是通过ssh协议传输数据,如果是想传输一个很大的数据,这几天我就遇到过,一个tar包,400G左右,通过scp拷贝时,有可能遇到服务器断电什么的悲剧问题,那么类似scp拷贝的另一个命令 rsy ...

  4. 对于Dubbo一些面试题自己的答案

    Dubbo 头几天瞧到<Java顶尖口试必问-Dubbo口试题汇总>,对于内里得难点本人试着答复少许,有错误得请民众指正. Dubbo固然大概不革新了,可是背靠阿里得措施能力,中文报告得多 ...

  5. 20179223《Linux内核原理与分析》第一周学习笔记

    第一周实验 尝试创建两个文件,用通配符查找这两个文件:在创建文件的时候,需要同时创建多个文件的方法运行. 根据作业要求,实现一个lilux命令. 根据作业要求添加一个用户loutest,使用sudo创 ...

  6. 《selenium2 python 自动化测试实战》(18)——自动化测试模型(一)

    线性测试 已经被淘汰了:线性测试就是一个脚本完成一个场景,代码基本没有复用,每一个脚本都要从头开始写——这哪行. 模块化与类库 这个就是分模块:有点类似面系那个对象,把功能(比如登录)单独拿出来,当下 ...

  7. autoconf 简单demo试用

    1. 安装工具 yum install -y automake   2. 基本项目 a. 项目参考结构 ├── AUTHORS ├── COPYING ├── ChangeLog ├── Makefi ...

  8. @Autowired & @Resource 区别 & 解读@Bean

    一样     Autowired & @Resource 都可以用来Bean的注入,可以写在属性(字段)上.也可以写在setter方法上 不一样 1.来源不一样 @Autowired 由Spr ...

  9. Redis简单介绍与安装

    Redis是一个开源,高级的键值存储和一个适用的解决方案,用于构建高性能,可扩展的Web应用程序. Redis有三个主要特点,使它优越于其它键值数据存储系统 - 1) Redis将其数据库完全保存在内 ...

  10. git 清除本地无效的分支

    远程服务器的分支已经删掉了,但是本地分支还存在 $ git fetch -p 如果不行,使用下面的指令 $ git remote prune origin