一、开发简介

1、开发:
      开发语言:
               高级语言:python、JAVA、PHP、C#、、ruby、Go--》字节码
                低级语言:C、汇编--》机器码

2、语言之间的对比:
  PHP类:适用于写网页,局限性
  JAVA\Python:可以写网页,也可以写后台
    JAVA执行效率高,开发效率低
    Python 执行效率低,开发效率高

3、Python种类:
  JPython
  Cpython
  IronPython
  JavaScriptPython
  RubyPython
  ...
  pypy 这是用CPython开发的Python

  一般学习的Python都是指CPython

  IronPython 是一种在 NET 和 Mono 上实现的 Python 语言

  Jython是一种完整的语言,而不是一个Java翻译器或仅仅是一个Python编译器,它是一个Python语言在Java中的完全实现。

  CPython是特指C语言实现的Python,就是原汁原味的Python。一般我们学习的都是这个。

  PyPy是另一个Python解释器,它的目标是执行速度。PyPy采用JIT技术,对Python代码进行动态编译(注意不是解释),所以可以显著提高Python代码的执行速度。简单来说就是python1编写的代码,第一次给python2去执行,然后python2得到python1编写代码的机器码,第二次运行同样的python1的代码,python2就直接执行机器码了,所以运行速度会提高。


4、安装:
  Python安装在OS上,
     执行操作
        写一个文件,按照python的规则写,将文件交给python,
          软件读取文件内容,然后转换和执行,最终获取结果。
  python软件 ==>Python解释器(内存管理)

5、下载说明:
  python3
    pyrhon3不向下兼容python2,在继续更新,
  python2
    在继续更新,在越来越向python3转换

6、机器码和字节码
  机器码是计算机能够识别的东西,是电脑的CPU可直接解读的数据。
  字节码是一种包含执行程序、由一序列 op 代码/数据对 组成的二进制文件。字节码是一种中间码,它比机器码更抽象,需要直译器转译后才能成为机器码的中间代码。

二、Python基础

1、第一句python

print(“hello world”)

2、 编码

  # -*- coding:utf8 -*-

  Python3中无需关注# -*- coding:utf8 -*-

  Python2中,只要出现中文,头部必须写这一句,因为python2默认用ASCII编码,只支持英文,出现中文会显示乱码

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']

  • 内置函数和类也不能用做变量名

4、多行注释用

"""
代码内容
"""

   三个引号即可注释多行内容

5、条件语句
    缩进用4个空格,一般按TAB键即可实现

(1)复杂嵌套语句

if 条件表达式1:
功能代码1
if 条件表达式2:
功能代码2
else:
功能代码3
else:
功能代码4

  

(2)多条件判断

if 条件表达式1:
功能代码1
elif 条件表达式2:
功能代码2
elif 条件表达式3:
功能代码3
else:
功能代码4

  

( 3 ) and or条件

if 条件表达式1 and 条件表达式2 :
功能代码1
else:
功能代码2

  

>功能代码如果写成pass,表示什么都不执行

6、基本数据类型
  a、字符串
  引号引起来的都称之为字符串,

  (1)字符串里的加法

n1 = 'hello'
n2 = 'world'
n3 = n1 + n2
print(n3)

  输出结果:

helloworld

  (2)字符串里的乘法

n1 = 'hello'
n2 = n1 * 5
print(n2)

  输出结果

hellohellohellohellohello

  b、数字运算符
  n1 = 8
  n2 = 2

  (1)加
     n3 = n1 + n2

  (2)减
    n3 = n2 - n1

  (3)乘
    n3 = n1 * n2

  (4)除
    n3 = n2 / n1

  (5)次方(幂)
    n3 = 2 **4
    2的4次方

  (6)取余
    n3 = 39 % 8
    对39除以8取余数 即39/8=4余7 , 4*8=32, 39-32= 7.

  (7)取整数商

    n3 = 39 //8
    对39除以8取整数商,即只要商的整数部分4

7、循环
  a、死循环  

while 1 = 1:
  print("ok")

  此程序将一直输出ok

  b、while 条件循环

import time
count = 0
while count < 10 :
print("ok",time.time())
count = count +1
print("123")

练习

1、使用while循环输入 1 2 3 4 5 6 8 9 10

n = 1
while n < 11:
if n == 7 :
pass
else:
print(n)
n = n + 1

  

  注意n = n + 1要与if、else语句对齐,不然无法输出8、9、10

2、求1-100的所有数的和

n = 1
s = 0
while n < 101:
s = s + n
n = n + 1
print(s)

  

3、输出 1-100 内的所有奇数

n = 1
while n < 101:
if n % 2 == 1 :
print(n)
else:
pass
n = n + 1

  

4、输出 1-100 内的所有偶数

n = 1
while n < 101:
if n % 2 == 0 :
print(n)
else:
pass
n = n + 1

  

5、求1-2+3-4+5 ... 99的所有数的和

n = 1
s1 = 0
s2 = 0
while n < 100:
if n % 2 == 1 :
s1 = s1 + n
else:
s2 = s2 + n
n = n + 1
s = s1 -s2
print(s)

  

或者

n = 1
s = 0 # s是之前所有数的总和
while n < 100:
temp = n % 2
if temp == 0:
s = s - n
else:
s = s + n
n = n + 1
print(s)

  

这里可以理解为搭积木
(1)当全部为正数求和时
  sum = sum + n
  最开始积木塔(sum)为0
  来了一块积木1,积木塔马上加上1,
  来了一块积木2,积木塔马上加上2,
  以此类推
  sum = sum + n
(2)当奇数为正,偶数为负
  偶数为负也可以理解为减法,即抽掉
  同样的,最开始积木塔(sum)为0
  来了一块积木1,积木塔马上加上1,
  要抽掉一块积木2,积木塔马上减去2
  来了一块积木3,积木塔马上加上3,
  要抽掉一块积木4,积木塔马上减去4,
  以此类推
  奇数时
  sum = sum + n
  偶数时
  sum = sum - n
6、用户登录用户登陆(三次机会重试)

name = input("请输入账户名:")
passwd = input("请输入密码:")
count = 1
while count < 3:
if name != 'nicholas' or passwd != '123':
print ("账户名或者密码输入错误!请重新输入!")
name = input("请输入账户名:")
passwd = input("请输入密码:") elif name == 'nicholas' and passwd == '123':
print ("登录成功!")
break
count = count + 1
else:
print("三次未能成功登录,登录失败!")

  精简代码

count = 0
while count < 3:
name = input("请输入账户名:")
passwd = input("请输入密码:")
if name == 'nicholas' and passwd == '123':
print ("登录成功!")
break
else:
print ("账户名或者密码输入错误!请重新输入!")
count = count + 1
else:
print("三次未能成功登录,登录失败!")

  

Python之路(第一篇):Python简介和基础的更多相关文章

  1. python之路第一篇

    一.python环境的搭建 1.window下环境的搭建 (1).在 https://www.python.org/downloads/ 下载自己系统所需要的python版本 (2).安装python ...

  2. Python之路(第九篇)Python文件操作

    一.文件的操作 文件句柄 = open('文件路径+文件名', '模式') 例子 f = open("test.txt","r",encoding = “utf ...

  3. Python开发【第一篇】:目录

    本系列博文包含 Python基础.前端开发.Web框架.缓存以及队列等,希望可以给正在学习编程的童鞋提供一点帮助!!! Python开发[第一篇]:目录 Python开发[第二篇]:初识Python ...

  4. Python开发【第一篇】:目录

    本系列博文包含Python基础.前端开发.Web框架.缓存以及队列等,希望可以给正在学习Python编程的朋友们提供一点帮助! .Python开发[第一篇]:目录 .Python开发[第二篇]:初始P ...

  5. .NET持续集成与自动化部署之路第一篇——半天搭建你的Jenkins持续集成与自动化部署系统

    .NET持续集成与自动化部署之路第一篇(半天搭建你的Jenkins持续集成与自动化部署系统) 前言     相信每一位程序员都经历过深夜加班上线的痛苦!而作为一个加班上线如家常便饭的码农,更是深感其痛 ...

  6. SAP-ABAP系列 第一篇SAP简介

    第一篇 SAP简介 SAP全名为System Application and Products in Data Processing.SAP目前是全世界排名第一的RP软件,号称“全球最大的企业管理解决 ...

  7. Python自动化 【第一篇】:Python简介和入门

    Python简介: 一.什么是python Python是一门动态解释性的强类型定义语言. pythonde 特点:“优雅”.“明确”.“简单”. 二.Python由来 python的创始人为吉多·范 ...

  8. Python之路第一课Day9--随堂笔记之二(进程、线程、协程篇)

    本节内容 进程.与线程区别 python GIL全局解释器锁 线程 语法 join 线程锁之Lock\Rlock\信号量 将线程变为守护进程 Event事件 queue队列 生产者消费者模型 Queu ...

  9. Python学习【第一篇】Python简介

    Python简介 Python前世今生 Python是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言. 现在,全世界差不多有600多种编 ...

随机推荐

  1. git flow分支管理

    阅读目录 两种核心分支 三种临时分支 Git Flow流程示例代码 Git Flow工具 分支命名规范 总结 git flow是Vincent Driessen提出了一个分支管理的策略,非常值得借鉴. ...

  2. 关于Android file.createNewFile() 失败的问题

    [关于Android file.createNewFile() 失败的问题] 需要注意的是:要先对设计的文件路径创建文件夹 , 然后在对文件进行创建. 参考:http://blog.csdn.net/ ...

  3. awk技巧 nginx access.log

    1.1 介绍 awk其名称得自于它的创始人 Alfred Aho .Peter Weinberger 和 Brian Kernighan 姓氏的首个字母.实际上 AWK 的确拥有自己的语言: AWK ...

  4. numpy 之矩阵的认知

    di numpy 矩阵的创建与应用 可以用np.mat(a) 将a转变成矩阵 矩阵的加减法和 array相同 矩阵的乘法,如果矩阵要相乘的话就要A矩阵的行数,和B矩阵的列数相同才可以 这是查看数组不重 ...

  5. ZOJ2018/4月月赛G题Traffic Light(广搜)

    题意:首先T组数据,每组数据包括:第一行:一个n,m,然后下面有一个n行m列的01矩阵. 最后一行输入四个数字,分别是起点的横纵坐标,终点的横纵坐标.询问从起点到终点,最少要几步,如果到不了输出-1 ...

  6. Disruptor并发框架简介

    Martin Fowler在自己网站上写一篇LMAX架构的文章,在文章中他介绍了LMAX是一种新型零售金额交易平台,它能够以很低的延迟产生大量交易.这个系统是建立在JVM平台上,其核心是一个业务逻辑处 ...

  7. [剑指Offer]48-最长不含重复字符的子字符串(递归思想,循环实现)

    题意 如题,字符串只含a-z,输出该子串长度.例:"arabcacfr",输出4. 解题思路 递归思想 计f(i)为以第i个字符结尾的最长不含重复字符的子串长度. 状态转移:计d为 ...

  8. c++ sizeof,strlen, length

    #include <map>#include <iostream>#include <algorithm>#include <functional>#i ...

  9. f5基本介绍

    1.信息查看 1)登录: https://10.160.100.10 f5有2台,做HA IP地址分别为10.160.100.3和10.160.100.2 10.160.100.10为虚拟地址 2)基 ...

  10. Myeclipse安装完配置

    1.Window --> preferences --> 搜索tomcat --> Tomcat7.x --> 选择Enable并导入tomcat所在目录2.Window -- ...