一、开发简介

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. web 浏览器窗口window 与框架 frameset 的关系

    如果页面包含框架,则每个框架都拥有自己的window对象,并且保存在frames集合中,可以通过数字索引(从0开始,从左右到右,从上到下)或者框架名称来访问相对应的window对象. 每个window ...

  2. javascript学习笔记(八):浏览器对象

    window对象 <!DOCTYPE html> <html> <head lang="en"> <meta chaset="U ...

  3. python 文件操作: 文件操作的函数, 模式及常用操作.

    1.文件操作的函数: open("文件名(路径)", mode = '模式', encoding = "字符集") 2.模式: r , w , a , r+ , ...

  4. Android创建和删除桌面快捷方式

    有同学方反馈创建快捷方式后,点击快捷方式后不能启动程序或者提示"未安装程序",貌似是新的rom在快捷方式这块做过修改(由于此文是11年5月所出,估计应该是2.0或2.1的rom), ...

  5. java面试题:数据库mysql

    Web后端数据库一般用mysql. 数据库基础 Q:数据库三范式是什么? 第一范式:列不可再分 第二范式:行可以唯一区分,主键约束 第三范式:表的非主属性不能依赖与其他表的非主属性 外键约束 且三大范 ...

  6. as3.0 橡皮功能2

    package com{ import flash.display.MovieClip; import flash.display.Bitmap; import flash.display.Bitma ...

  7. 第二章 向量(d4)有序向量:二分查找(改进)

  8. java里面获取map的key和value的方法

    获取map的key和value的方法分为两种形式: map.keySet():先获取map的key,然后根据key获取对应的value: map..entrySet():同时查询map的key和val ...

  9. 网页中flash设置

    我们现在大部分人做网页,都是直接用DW插入flash,而且DW也是所见即所得,直接生成了相应的flash显示代码.可是我们又有多少人了解这些直接由DW生成的代码呢?其实我接触flash player标 ...

  10. Meta-Analysis

    meta-analysis是用统计的概念与方法,去收集.整理与分析之前学者专家针对某个主题所做的众多实证研究,希望能够找出该问题或所关切的变量之间的明确关系模式,可弥补传统的Review Articl ...