需经过编译器将源代码编译成机器码,以后才能执行的语言。通常需通过编译(compile)、连接(linker)这两个步骤。程序员
编译是把源代码编译成机器码,连接是把各个模块的机器码和依赖库串连起来生成可执行文件。例如C/C++等。优化
编译器通常会有预编译的过程对代码进行优化。由于编译只作一次,运行时不须要编译,因此编译型语言的程序执行效率高。能够脱离语言环境独立运行。编码
开发效率慢,不能跨平台。spa
编译以后若是须要修改就须要整个模块从新编译。编译的时候根据对应的运行环境生成机器码,不一样的操做系统之间移植就会有问题,须要根据运行的操做系统环境编译不一样的可执行文件。操作系统
解释性语言的程序不须要编译,解释性语言在运行程序的时候才逐行翻译。例如Python。翻译
开发效率快,能够跨平台code
由于每次运行都要将代码解释一遍,因此运行效率相对较低。blog
由于当年投入Python源码开发的程序员大多出身于各种语言程序源,各自的代码标准不一样,开发习惯不一样,致使Python2.X重复代码较多,不规范,整体来讲源码比较混乱。内存
龟叔认识到Python2.X的缺点后本身按照Python崇尚的优美,简单,清晰的审美规则本身写了一套Python源码,相对于Python2.X而言,Python更加的规范,也体现了其优美,简单,清晰的审美准则。utf-8
#-*-encoding:utf-8 -*-
在内存中按照必定的格式划分出一块内存空间,用以存放数据,即命名的内存空间。
例如:
name = tom age = 24 bir_of_china = 1949
在Python中其实没有常量的概念,可是不少从事C语言的程序员都有使用常量的习惯,因此在Python中,约定俗成的认为用大写字母定义的变量名即为常量。
单行注释:#
多行注释:''' ''' """ """
#语法1
if 条件: 结果 #语法2
if 条件: 结果 else: 结果 #语法3
if 条件: 结果 elif:条件 结果 elif:条件 结果 ... else: 结果
例如:
number = input('请输入您猜的数字') if number == '1' : print('抽烟') elif number == '2' : print('喝酒') elif number == '3' : print('大保健') else : print('滚')
while循环:
#语法
while 条件 : 结果
在while循环中,须要注意的是循环的条件断定,若是没有条件断定,则会无限循环。循环语句的结束基本有如下三种方式
num = 10 flag = True while flag : print(num) num = num - 1
if num < 5 : flag = False
n = 10
while n > 5 : print(n) n = n-1
n = 10
while n > 1 : print(n) n = n-1
if n < 5 : break
n = 10
while n > 1 : n = n - 1
if n % 2 == 1 : continue
else : print(n)
相关练习:
1.使用while循环输出1 2 3 4 5 6 8 9 10
n = 1
while n <= 10 : if n != 7 : print(n) else : print(' ') n = n + 1
2.求1-100全部数的和
n = 100 k = 100
while n >= 1 : n = n - 1 k = k + n print(k)
3.输出1-100的全部奇数
n = 0 while n < 100 : n = n + 1
if n % 2 == 1 : print(n) else : continue
4.输出1-100的全部偶数
n = 0 while n < 100 : n = n + 1
if n % 2 == 0 : print(n) else : continue
5.求100之内全部奇数的和
n = 0 k = 0
while n <= 100 : n = n + 1
if n % 2 == 1 : k = k + n else : continue print(k)
6.用户登陆,三次机会重试
n = 1
while n <= 3 : user = input('请输入用户名') passwd = input('请输入密码') if user == 'admin': if passwd == 'password': print('登陆成功') break
else : print('登陆失败') else : print('登陆失败') n = n + 1
if n > 3 : print('该用户已锁定')