Python基础一

回来目录页

Python介绍

python的出生与应用

  python的开创者为吉多·范罗苏姆(吉多 van 罗斯尔um)。

  Python崇尚精粹、清晰、轻巧,是多少个天时地利并布满采用的言语。

python是何等编制程序语言

*  编制程序语言首要分类*

*  编写翻译型和平解决释型*

*  静态语言和动态语言*

*  强类型定义语言和弱类型定义语言*

编写翻译型与解释型

编译器  先把源程序全体编写翻译成机器语言,并保留成二进制文件,Computer直接以机器语言来运维程序,速度快

解释器  编写翻译一行实行一行,速度慢

  Computer无法直接认知并实践我们写的话语,它只好认知机器语言(是二进制的款型)

 

编译型
  优点:编写翻译器一般会有预编写翻译的进度对代码实行优化。因为编译只做叁次,运维时无需编写翻译,所以编写翻译型语言的程序施行功效高。能够退出语言境遇独立运行。
  缺点:编写翻译之后假使供给修改就须要全方位模块重新编写翻译。编写翻译的时候依据对应的运行条件生成机器码,区别的操作系统之间移植就能够有标题,要求依附运营的操作系统蒙受编写翻译不一致的可执行文件。

解释型
  优点:有出彩的平台包容性,在别的情状中都能够运维,前提是设置了然释器(设想机)。灵活,修改代码的时候一直改培养足以,能够快捷安插,不用停机维护。

  缺点:历次运营的时候都要分解一回,品质上比不上编写翻译型语言。

 

动态语言和静态语言

动态类型语言:

  动态类型语言是指在运营时期才去做数据类型检查的言语,也正是说,在用动态类型的语言编制程序时,永久也不用给任何变量钦赐数据类型,该语言会在你首先次赋值给变量时,在其军长数据类型记录下来。Python和Ruby即是一种标准的动态类型语言,别的的各个脚本语言如VBScript也稍微属于动态类型语言。

静态类型语言:

  静态类型语言与动态类型语言恰恰相反,它的数据类型是在编写翻译其间检查的,也正是说在写程序时要评释全体变量的数据类型,C/C++是静态类型语言的规范代表,别的的静态类型语言还会有C#、JAVA等。

强类型定义语言和弱类型定义语言

强类型定义语言:

  强制数据类型定义的语言。也正是说,一旦三个变量被钦定了某些数据类型,假使不经过强制转变,那么它就恒久是其一数据类型了。比如:假若您定义了叁个整型变量a,那么程序根本不容许将a当作字符串类型管理。强类型定义语言是项目安全的言语。

弱类型定义语言:

  数据类型能够被忽视的言语。它与强类型定义语言相反,
一个变量能够赋不一致数据类型的值。

强类型定义语言在速度上大轮廓逊色于弱类型定义语言,不过强类型定义语言带来的严厉性能够行得通的防止过多荒唐。另外,“那门语言是否动态语言”与“那门语言是否类型安全”之间是一丝一毫未有交流的!
诸如:Python是动态语言,是强类型定义语言(类型安全的语言);
VBScript是动态语言,是弱类型定义语言(类型不安全的言语);
JAVA是静态语言,是强类型定义语言(类型安全的语言)。

python是一门动态解释性的强类型定义语言。

python的优短处

优点:

  1. 简单、易学、免费、开源

  2. 强硬的第三方库

  3. 面向对象

  4. 可移植性

  5. 可扩张性

 

缺点:

  1. 速度慢

  2. 代码不能够加密

  3. 线程不能够利用多CPU难点

 

python的种类

CPython

  那么些解释器是用C语言开垦的,所以叫CPython。在指令行下运转python正是运转CPython解释器。

IPython

  IPython是基于CPython之上的贰个交互式解释器,IPython只是在交互格局上具有拉长,效率雷同

PyPy

  PyPy是另四个Python解释器。PyPy选用JIT技术,对Python代码实行动态编写翻译(注意不是表明),能够不问可知加强Python代码的试行进程

Jython

  Jython是运维在Java平台上的Python解释器,能够一向把Python代码编写翻译成Java字节码实施。

IronPython

  IronPython和Jython类似,只可是IronPython是运营在微软.Net平台上的Python解释器,能够一贯把Python代码编写翻译成.Net的字节码。

小结:

  Python的解释器很多,但使用最广泛的依然CPython。借使要和Java或.Net平台相互,最棒的主意不是用Jython或IronPython,而是通过互联网调用来交互,确定保障各程序之间的独立性。

python基础初识

剧情编码

  python2解释器(默认ascill)

  python3对剧情张开编码的默感到utf-8。

  ASCII  其最三只能用 8 位来表示(一个字节),即:2**8 =
256,所以,ASCII码最四只好表示 256 个暗记。

 

  Unicode(统一码、万国码、单一码)是一种在Computer上利用的字符编码。它为各类语言中的每种字符设定了合併何况独一的二进制编码,规定虽有的字符和标识最少由
16 位来表示(2个字节),即:2 **16 = 65536,
注:此处说的的是最少2个字节,恐怕越多

  UTF-8,是对Unicode编码的滑坡和优化,他不再采用最少使用2个字节,而是将享有的字符和符号进行分类:ascii码中的内容用1个字节保存

                                                  亚洲的字符用2个字节保存

                                                  南亚的字符用3个字节保存…

python2解释器在加载 .py 文件中的代码时,会对剧情开始展览编码(暗许ascill)

  #!/usr/bin/env python   寻觅解释器地方

  # -*- coding: utf-8 -*-   呈现中文

注释

  单行注释:# 被讲明内容

  多行注释:”’被解说内容”’,也许”””被讲明内容”””

  文书档案注释:1. 选中等高校函授数名称

       2. 点击小灯泡

       3. 选择 insert documentation string stub

  标志注释:#_TODO(人名)_呈现效果菜单  和单行注释差不离

变量

变量定义的条条框框:

  • 变量名只好是 字母、数字下划线的妄动组合
  • 变量名的率先个字符不能够是数字
  • 以下注重字无法宣称为变量名
  • 变量的概念要享有可描述性。

推介定义格局

#驼峰体

AgeOfOldboy = 56

NumberOfStudents = 80

#下划线

age_of_oldboy = 56

number_of_students = 80

常量

常量即指不改变的量

概念类型为一切大写

AGE_OF_OLDBOY = 56

基础数据类型(开端)

大背头门类(int)

在33位机器上,整数的位数为31个人,取值范围为-2**31~2**31-1,即-2147483648~2147483647

在64个人系统上,整数的位数为六十六个人,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807

long(长整型)在Python3里不再有long类型了,全是int

字符串类型(str)

以下格式为 格式化输出 打字与印刷在调整台

msg = ”’

今天我想写首小诗,
歌颂我的同桌,
你看他那乌黑的短发,
好像一只炸毛鸡。
'''
print(msg)

字符串拼接

但不得不进行”相加”和”相乘”运算。

>>> name = ‘Alex Li’

>>> age = '22'
>>> 
>>> name + age  #相加其实就是简单拼接
'Alex Li22'
>>> 
>>> name * 10 #相乘其实就是复制自己多少次,再拼接在一起
'Alex LiAlex LiAlex LiAlex LiAlex LiAlex LiAlex LiAlex LiAlex LiAlex Li'

留神,字符串的拼接只好是两个都是字符串,不可能跟数字或别的品类拼接

布尔值(True,False)

布尔类型很简短,就多少个值 ,一个True(真),贰个False(假), 首要用记逻辑判定

 

格式化输出

幸存一练兵必要,问用户的人名、年龄、工作、爱好 ,然后打字与印刷成以下格式

———— info of Alex Li

Name  : Alex Li
Age   : 22
job   : Teacher
Hobbie: girl
------------- end -----------------

 

 name = input(“Name:”)

age = input("Age:")
job = input("Job:")
hobbie = input("Hobbie:")

info = '''
------------ info of %s ----------- #这里的每个%s就是一个占位符,本行的代表 后面拓号里的 name 
Name  : %s  #代表 name 
Age   : %s  #代表 age  
job   : %s  #代表 job 
Hobbie: %s  #代表 hobbie 
------------- end -----------------
''' %(name,name,age,job,hobbie)  # 这行的 % 号就是 把前面的字符串 与拓号 后面的 变量 关联起来 

print(info)

msg = "我是%s,年龄%d,目前学习进度为80%%"%('郑松松',18)
print(msg)

 

基本运算符

算数运算

以下倘使变量:a=10,b=20

图片 1

相比运算

以下若是变量:a=10,b=20

图片 2

赋值运算

以下假使变量:a=10,b=20

图片 3

逻辑运算

图片 4

 

本着逻辑运算的一发商讨:

  1,在尚未()的情事下not
优先级高于 and,and优先级高于or,即优先级关系为(
)>not>and>or,同一优先级从左往右总结。

例题:

认清下列逻辑语句的True,False。

图片 5

1,3>4 or 4<3 and 1==1
2,1 < 2 and 3 < 4 or 1>2 
3,2 > 1 and 3 < 4 or 4 > 5 and 2 < 1
4,1 > 2 and 3 < 4 or 4 > 5 and 2 > 1 or 9 < 8
5,1 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6
6,not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6

图片 6

  2 ,  x or y , x为真,值就是x,x为假,值是y;

             x and y, x为真,值是y,x为假,值是x。

 图片 7

例题:求出下列逻辑语句的值。

8 or 4
0 and 3
0 or 4 and 3 or 7 or 9 and 6

in,not in :

看清子成分是还是不是在原字符串(字典,列表,集合)中:

例如:

#print('喜欢' in 'dkfljadklf喜欢hfjdkas')
#print('a' in 'bcvd')
#print('y' not in 'ofkjdslaf')

流程序调整制之–if

单分支

if 条件:
    满足条件后要执行的代码

双分支

图片 8

if 条件:
    满足条件执行代码
else:
    if条件不满足就走这段

缩进

Python的缩进有以下多少个标准化:

  • 五星级代码必须顶行写,即如若一行代码本人不正视于别的条件,那它必须无法张开任何缩进
  • 同一流别的代码,缩进必须一致
  • 法定建议缩进用4个空格。

多分支

再次来到流程序调整制上来,if…else …能够有三个分支条件

图片 9

if 条件:
    满足条件执行代码
elif 条件:
    上面的条件不满足就走这个
elif 条件:
    上面的条件不满足就走这个
elif 条件:
    上面的条件不满足就走这个    
else:
    上面所有的条件不满足就走这段

图片 10

写个猜年龄的游戏吧

图片 11

age_of_oldboy = 48

guess = int(input(">>:"))

if guess > age_of_oldboy :
    print("猜的太大了,往小里试试...")

elif guess < age_of_oldboy :
    print("猜的太小了,往大里试试...")

else:
    print("恭喜你,猜对了...")

图片 12

地点的事例,依照你输入的值差别,会最多获得3种分歧的结果

再来个门道分外成绩的小程序吗,成绩有ABCDE5个阶段,与分数的照料关系如下

A    90-100
B    80-89
C    60-79
D    40-59
E    0-39

务求用户输入0-100的数字后,你能科学打字与印刷他的相应战绩

 score =
int(input(“输入分数:”))

if score > 100:
    print("我擦,最高分才100...")
elif score >= 90:
    print("A")
elif score >= 80:
    print("B")
elif score >= 60:
    print("C")
elif score >= 40:
    print("D")
else:
    print("太笨了...E")

流程调控之–while循环

骨干循环

 
while 条件:
     
    # 循环体
 
    # 如果条件为真,那么循环体则执行
    # 如果条件为假,那么循环体不执行

巡回中止语句 

  • break用于完全完工多少个巡回,跳出循环体推行循环后边的说话
  • continue和break有一些类似,差距在于continue只是甘休这一次巡回,接着还实行前面包车型地铁轮回,break则一心终止循环

例子:break

 count = 0

while count <= 100 : #只要count<=100就不断执行下面的代码
    print("loop ", count)
    if count == 5:
        break
    count +=1 #每执行一次,就把count+1,要不然就变成死循环啦,因为count一直是0

print("-----out of while loop ------")

输出

 loop 0

loop  1
loop  2
loop  3
loop  4
loop  5
-----out of while loop ------

例子:continue

count = 0
while count <= 100 : 
    count += 1
    if count > 5 and count < 95: #只要count在6-94之间,就不走下面的print语句,直接进入下一次loop
        continue 
    print("loop ", count)

print("-----out of while loop ------")

输出

loop  1
loop  2
loop  3
loop  4
loop  5
loop  95
loop  96
loop  97
loop  98
loop  99
loop  100
loop  101
-----out of while loop ------

while … else ..

当while 循环平常实施完,中间未有被break 中止的话,就能够施行else前面包车型地铁语句

count = 0
while count <= 5 :
    count += 1
    print("Loop",count)

else:
    print("循环正常执行完啦")
print("-----out of while loop ------")

输出

Loop 1
Loop 2
Loop 3
Loop 4
Loop 5
Loop 6
循环正常执行完啦
-----out of while loop ------

假定实施进度中被break啦,就不会实施else的语句啦

count = 0
while count <= 5 :
    count += 1
    if count == 3:break
    print("Loop",count)

else:
    print("循环正常执行完啦")
print("-----out of while loop ------")

输出

Loop 1
Loop 2
-----out of while loop ------

连锁演练题

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

2、求1-100的全部数的和

3、输出 1-100 内的兼具奇数

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

5、求1-2+3-4+5 … 99的全部数的和

6、用户登录(二遍机遇重试)

相关文章