您的位置:新葡亰496net > 奥门新萄京娱乐场 > Python_note1

Python_note1

发布时间:2019-11-15 12:46编辑:奥门新萄京娱乐场浏览(156)

     一、Python的介绍 

      Python 是二个高等级次序的三结合掌握释性、编写翻译性、相互影响性和面向对象的脚本语言。

      Python 的规划有所很强的可读性,相比较其余语言平日使用立陶宛共和国(Republic of Lithuania卡塔尔国语关键字,别的语言的片段标点符号,它装有比别的语言更有风味语法结构。

    • Python 是后生可畏种解释型语言: 那意味开拓进程中绝非了编写翻译这一个环节。相像于PHP和Perl语言。
    • Python 是人机联作式语言: 那表示,您可以在八个Python提醒符,直接相互影响推行写你的前后相继。
    • Python 是面向对象语言: 那代表Python扶助面向对象的风骨或代码封装在对象的编制程序技术。
    • Python 是初行家的语言:Python 对初级程序猿来讲,是后生可畏种庞大的语言,它扶助左近的应用程序开垦,从轻易的文字管理到 WWW 浏览器再到游戏。

     

      Python的特点:

    •  1.便于学习:Python有相对很少的机要字,结构轻易,和二个显眼概念的语法,学习起来特别简便易行。
    •  2.轻易阅读:Python代码定义的更清楚。
    •  3.易于维护:Python的中标在于它的源代码是意气风发对意气风发轻松有限协助的。
    •  4.一个宽广的规范库:Python的最大的优势之一是加上的库,跨平台的,在UNIX,Windows和Macintosh宽容很好。
    •  5.相互影响方式:相互格局的支持,您能够从极限输入推行代码并获得结果的言语,相互作用的测量检验和调节和测量试验代码片断。
    •  6.可移植:依赖其开放源代码的特征,Python已经被移植(也正是使其行事卡塔 尔(英语:State of Qatar)到广大平台。
    •  7.可扩展:假诺您必要大器晚成段运营高效的入眼代码,只怕是想要编写一些不愿开放的算法,你能够使用C或C 达成那部分前后相继,然后从您的Python程序中调用。
    •  8.数据库:Python提供全体重大的生意数据库的接口。
    •  9.GUI编程:Python扶植GUI能够创设和移植到比超级多系统调用。
    • 10.可嵌入: 您能够将Python嵌入到C/C 程序,让你的程序的客户获得"脚本化"的力量。
    • 11.速度慢:Python 的运作速度相比较C语言确实慢超多,跟JAVA相比也要慢一些,但在多数景观下Python已经完全可以满足你对前后相继速度的需要。
    • 12.代码无法加密:因为python是解释性语言,它的源码都以以名文方式贮存的。借使要求源代码必须是加密的,则就不应当用Python来去完成。
    • 13.线程不可能运用多CPU难点:GIL即全局解释器锁(Global Interpreter Lock卡塔 尔(阿拉伯语:قطر‎,是计算机程序设计语言解释器用于协同线程的工具,使得任哪天刻唯有叁个线程在实行,Python的线程是操作系统的原生线程。在Linux上为pthread,在Windows上为Win thread,完全由操作系统调解线程的进行。叁个python解释器进程内有一条主线程,以至多条客户程序的试行线程。固然在多核CPU平台上,由于GIL的存在,所以免止四线程的并行施行。

     


     

    二、Python的上扬历史 

      Python的祖师为Guido van 罗斯尔um。一九九零年圣诞节以内,在米兰,吉多为了消磨圣诞节的无趣,决心开辟一个新的剧本解释程序,作为ABC 语言的后生可畏种持续。

      ABC是由吉多参预安插的后生可畏种教学语言。就吉多本身看来,ABC 这种语言特别美貌和强盛,是刻意为非专门的学业程序猿设计的。但是ABC语言并不曾中标,究其原因,吉多感觉是其非开放形成的。吉多 决心在Python 中幸免那意气风发谬误。同有的时候间,他还想实今后ABC 中闪现过但绝非完结的东西。然后,Python在吉多手中诞生了。

      Python已经成为最受应接的次第设计语言之大器晚成。2011年三月,它被TIOBE编制程序语言排名榜评为二〇〇八寒暑语言。自从二零零四年今后,python的使用率呈线性增进 由于Python语言的简洁性、易读性以至可增加性,在国外用Python做科学总结的商讨机构稳步扩张,一些老品牌大学已经选取Python来说学先后设计课程。例如卡耐基梅隆大学的编制程序根基、德克萨斯奥斯汀分校高校的Computer科学及编制程序导论就利用Python语言传授。众多开源的科学总结软件包都提供了Python的调用接口,比如盛名的微管理机视觉库OpenCV、三个维度可视化库VTK、法学图像管理库ITK。而Python专项使用的科学计算扩充库就更加多了,比方如下3个非常卓绝的科学总括扩充库:NumPy、SciPy和matplotlib,它们分别为Python提供了连忙数组管理、数值运算甚至绘图功效。由此Python语言及其广大的强大库所构成的成本境况非常顺应工程工夫、科学钻探职员管理实验数据、制作图纸,甚至开荒科学计算应用程序。

      二〇一八年八月,该语言作者在邮件列表上颁发Python 2.7将于二〇二〇年四月1日终止扶植。客商只要想要在此个日期以往继续得到与Python 2.7有关的支撑,则须求付费给商业承包商。(更加多参见:百度宏观)

     


     

    三、Python的言语类型

      Python是一门动态解释型强类型定义语言。

      编写翻译型语言与解释性语言:

      编写翻译型语言:前后相继在实施在此以前须要二个特意的编写翻译进程,把程序编写翻译成为机器语言的文件,运维时没有要求重新翻译,运维时直接以机器语言来运作此程序。

      优缺点:

    1. 较编写翻译型语言实行进程快。用C/C 编写的程序运营速度要比用Java编写的同等程序快30%-十分之八。
    2. 编写翻译型程序比解释型程序消耗的内部存款和储蓄器越来越少。
    3. 有损的一派——编写翻译器比解释器要难写得多。
    4. 编写翻译器在调节和测验程序时提供少之又少帮扶——比方C语言代码中相见一个“空指针极度”时,必要花销大多少个钟头来鲜明错误到底在代码中的什么岗位。
    5. 可进行的编写翻译型代码要比同后生可畏的解释型代码大过多。举例,C/C 的.exe文件要比同等遵从的Java的.class文件大过多。
    6. 编写翻译型程序是面向特定平台的因此是平台重视的。
    7. 编写翻译型程序不帮忙代码中贯彻安全性——举个例子,三个编写翻译型的次序能够访谈内部存款和储蓄器的别的区域,何况能够对您的PC做它想做的此外事情(超越四分之二病毒是应用编写翻译型语言编写的卡塔 尔(英语:State of Qatar)
    8. 出于松散的安全性和平台信任性,编写翻译型语言不太切合开荒因特网可能依据Web的施用。

      应用方向:由于程序施行速度快,同等条件下对系统须求比较低,因而像开采操作系统、大型应用程序、数据库系统等时都利用它。

      解释性语言:源代码不是直接翻译成机器语言,而是程序在运作时先翻译成人中学间代码,再由解释器对中间代码进行分解运作。只在奉行顺序时,才一条一条的解释成机器语言给Computer施行,所以运营速度不比编写翻译后的程序运维的快。

      优缺点: 

    1. 解释型语言提供了极佳的调护医疗支持。一名Java工程师只须要几分钟就能够牢固并修复八个“空指针分外”,因为Java运转条件不仅仅指明了那多少个的习性,何况付出了要命爆发地方具体的行号和函数调用顺序(有名的酒店追踪音讯卡塔尔。那样的造福是编写翻译型语言所不可能提供的。
    2. 解释器比编写翻译器轻便达成。
    3. 解释型语言最大的优势之一是其平台独立性
    4. 解释型语言也足以确认保障中度的安全性——这是互联网使用迫切需求的。
    5. 中等语言代码的大大小小比编写翻译型可施行代码小超多。
    6. 平台独立性,以至严刻的安全性是使解释型语言改为符合网络和Web应用的非凡语言的2个最根本的因素。
    7. 解释型语言存在一些严重的劣点。解释型应用占用越来越多的内部存款和储蓄器和CPU财富。那是由于为了运营解释型语言编写的前后相继,相关的解释器必得首先运维。解释器是良莠不齐的,智能的,一大波消功耗源的次序同时它们会侵夺超级多CPU周期和内部存款和储蓄器。
    8. 是因为解释型应用的decode-fetch-execute(解码-抓取-实践卡塔 尔(英语:State of Qatar)的周期,它们比编写翻译型程序慢超多。
    9. 解释器也会做过多代码优化,运营时安全性检查;这一个额外的步子占用了越多的能源并一发减少了应用的周转速度。

      应用方向:应用于部分网页脚本、服务器脚本及救助开采接口那样的对进程供给不高、对分裂系统平台间的宽容性有早晚需要的顺序。

    •   平淡无奇编写翻译型语言:C、C 、GO
    •   家常便饭解释型语言:JavaScript、Python、Ruby、PHP(最佳的语言 :卡塔尔国 卡塔 尔(英语:State of Qatar)

    参见:点击这里

      动态语言与静态语言:

      动态类型语言(动态语言卡塔 尔(阿拉伯语:قطر‎指在 运行时期 才去做 数据类型 的反省的语言,也正是说,在用动态语言编制程序时,永不给任何变量内定数据类型。该语言会在首先次赋值给变量时,在里头将其数据类型记录下来。

    新葡亰496net 1新葡亰496net 2

    1 # Author : YM
    2 i = 1       # 不用给变量指定类型,第一次给变量赋值时,会在内部将其数据记录下来
    3 print(i)
    

    Python

    新葡亰496net 3

      静态类型语言(静态语言卡塔尔在 编译时期 检查数据类型,也正是写程序时要证明全数变量数据类型(所谓的变量要先定义后使用卡塔尔国。

    新葡亰496net 4新葡亰496net 5

    1  #include<stdio.h>
    2  int main(){
    3     int i=1;    //声明变量数据类型并赋初值否则编译出错
    4     printf("%dn",i);
    5  }
    

    C

    新葡亰496net 6

    •   不可胜数的动态语言:Python、Ruby等
    •   常见的静态语言:C、C 、C#、JAVA等

      强类型定义语言与弱类型语言:

      强类型定义语言即若多个变量被内定了有些数据类型,如过不通过强制调换,那么它永世都以此数据类型不会时有发生更改。比如:有三个整型数据,纵然不显式地张开转移,你不能够将其视为三个字符串,必需通过强制调换才方可看作字符串类型应用。

      弱类型定义语言即数据类型是能够被忽略的言语。贰个变量能够赋区别数据类型的值。

    •   管见所及的强类型定义语言有:JAVA、Python
    •   见惯不惊的弱类型定义语言有:VBScript

      


     

    四、Python第贰个程序(Hello Wold卡塔尔

    1 # Author : YM
    2 print("Hello world!")
    

      相比别的语言(只学过此三种语言卡塔尔国:

    新葡亰496net 7新葡亰496net 8

    1 #include<iostream>
    2 using namespace std;
    3 void main(){
    4 cout<<"Hello world!"<<endl;
    5 }
    

    C

    新葡亰496net 9新葡亰496net 10

    1 #include <stdio.h>
    2 int main(){
    3   printf("Hello, World! n");  
    4   return 0;
    5 }
    

    C

    新葡亰496net 11新葡亰496net 12

    1 public class Hello_World{
    2      public static void main(String args[]) {
    3         System.out.println("Hello world!");
    4      }
    5 }
    

    Java

      小知识:为何学每一门汇编语言,第贰个程序都要写 “ Hello world! ” ?一九七一年,贝尔实验室老品牌商量员Brian Kernighan在创作“B语言教程与指引(Tutorial Introduction to the Language B)”时最早使用(程序卡塔 尔(英语:State of Qatar),那是现阶段已知最先的在Computer作品元帅hello和world一同利用的笔录。之后,在一九七七年,他在她和Dennis Ritchie同盟编写的C语言圣经“The C Programming Language”中,延用了“hello,world”句式,作为开篇第一个程序。在此个顺序里,输出的”hello,world”全都以小写,未有惊讶号,逗号后有风姿洒脱空格。固然随后大致没能流传下来这一个最先的格式,但自此用hello world向世界打招呼成为惯例。(越多小知识可以预知《互联网时期》卡塔尔国

      Python语言风格:Python代码直观简洁,其可读性高(常用葡萄牙共和国语单词作器重字卡塔 尔(英语:State of Qatar)、易维护、具备强制缩进(比方:if语句下风度翩翩行必需向右缩进不然不能够透过编写翻译。卡塔 尔(英语:State of Qatar)与C/C 等语言差异,C/C 通过 “{ }” 明确代码试行边界而Python通过缩进调控(强制工程师养成突出的编制程序习于旧贯卡塔 尔(阿拉伯语:قطر‎,那也使得程序更为清晰雅观。

      


     

    五、变量

      变量定义的规则:

    1. 变量名只可以是字母、下划线和字母的自由组合。
    2. 变量名的首先个字符只可以是字母大概下划线,不能够是数字。
    3. 器重字不能够声称为变量。

      常用关键字:

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

      注意:诚如变量名的命名要直观明了,诸如年龄(age)、姓名(name)、学号(number)等。要是变量名较长能够用下划线连接可能单词首字母大写,如:my_girlfriend(或MyGirfriend)

      新葡亰496net 13


     

    六、字符编码

      先是等第:ASCII码(American Standard Code for Information Interchange卡塔尔国最四只好用 8 位来表示(多少个字节卡塔尔即:28 = 256-1=255,所以,ASCII码最多只可以表示 255 个暗号。

      第二等第:随着Computer广泛,多个国家针对自身国家的语言纷繁制订生龙活虎套自个儿国家的编码标准,称作ANSI(ANSI代表了分裂国家的区别编码方案,假若意气风发台Windows操作系统设定为汉语,那么ANSI就意味着GBK,如果设定为倭国ANSI就表示Shift_JIS。)

      第三等级:Unicode(统生龙活虎码、万国码、单大器晚成码卡塔 尔(阿拉伯语:قطر‎ 是为了消除守旧的字符编码方案的局限而发出的,它为各个语言中的各类字符设定了归拢何况唯大器晚成的二进制编码,规定虽有的字符和标志最少由 16 位来代表(2个字节卡塔 尔(阿拉伯语:قطر‎,即:216 = 65536(注:此处说的的是起码2个字节,恐怕越来越多。卡塔 尔(阿拉伯语:قطر‎    

      第四品级:utf-8 是对 Unicode 编码的滑坡和优化,它不再接纳起码使用2个字节,而是将有着的字符和符号举办分类:ASCLL码中的内容用1个字节保存、亚洲的字符用2个字节保存,南亚的字符用3个字节保存...

      Python2.X 解释器在加载 .py 文件中的代码时,会对故事情节开展编码(私下认可ASCLL卡塔 尔(阿拉伯语:قطر‎,要是要使用中文,则需告诉python解释器,用什么编码来进行源代码即

    # -*- coding: utf-8 -*-
    

      Python3.X 源码文件私下认可使用utf-8编码,所以能够健康深入分析中文,无需钦定UTF-8 编码。

     


     

    七、规范数据类型**  **

      Python3 中有三个正式的数据类型:

      1. Number(数字):整数、浮点数、复数

      类型调换函数 :

    • int()调换到整数
    • float()转变来浮点数
    • str()转变到字符串
    • complex(x)将x转为复数,x为实部,虚部为0
    • complex(x, y)将x,y转为复数,x实部,y虚部
    • list()转列表
    • tuple()转元组

      2. String(字符串):

       用引号(单,双,三引号,三引号可跨行卡塔尔包围起来

       字符串的基本操作有:copy,拼接,查找,总计,检查评定,切成条,大小写等。

    1 str = "字符串"   # 用引号括起来
    

      3. List(列表):

       由 [ ] 括起来以致大器晚成多元有序的要素结合,此中的元素得以是别的项目。

       列表的基本操作有:索引(访问卡塔 尔(英语:State of Qatar),切成条,扩充,删除,追加,计算,长度,获取下标等。

    list = ["列", "表", "l", "i", "s", "t"]    # 用[ ]括起来
    

      4. Tuple(元组):

       由(卡塔尔小括号括起来,成分采纳逗号隔绝。注意当元祖中唯有贰个要素的时候,要加上逗号,不然就成为字符串了。

    1 tuple1 = ('Y', 'u', 'a', 'n', 'Z', 'u')    # 用()括起来
    2 tuple2 = ("元组",)     # 元组中只有一个元素,要在元素后添逗号
    

      5. Set(集合):

       用大括号 { } 只怕 set() 函数创制群集,注意:创造三个空群集必得用 set() 并非 { },因为 { } 是用来创立多少个空字典。   

       集结是三个冬辰,不重复,每一个成分必须是不行变类型的多少整合,主要功用有去重和关系运算。

     1 # Author : YM
     2 a = set('abcd')
     3 b = set('cdef')
     4 print("a = set('abcd')")
     5 print("b = set('cdef')")
     6 print()
     7 c = b | a   # 求合集 , union等同|
     8 print("b | a (合集): ", c)
     9 c = b & a   # 求交集  , intersection等同&
    10 print("b & a (交集): ", c)
    11 c = b - a   # 求差集   , difference等同-
    12 print("b - a (差集): ", c)
    13 c = b ^ a    # 求对称差集 symmetric_difference(求对称差集)
    14 print("b ^ a (对称差集): ", c)
    15 a.add('x')            # 添加一项
    16 print("添加一项x:", a)
    17 a.update([10, 37, 42])  # 在a中添加多项
    18 print("添加多项:", a)
    

    新葡亰496net 14

      6. Dictionary(字典):

       字典是意气风发种映射型的数据类型,种种成分成对现身,即key- value,每对成分key 和  value“:”冒号分开,成分之间用逗号隔开分离,整个字典富含子在{ }中。

       字典的基本操作包括 创立,扩大,删除,改过,查找,遍历,更新,in  or  not in 等。

    1 dictionary = {"writer": "夏目漱石", "book": "我是猫", "country": "Japan"}
    

      其中:

    • 不足变类型(3 个卡塔 尔(英语:State of Qatar):Number(数字)、String(字符串)、Tuple(元组);
    • 可变类型(3 个卡塔尔:List(列表)、Dictionary(字典)、Set(集合)。

     


     

     八、Python 运算符

      算数运算:

      新葡亰496net 15

      正如运算:

      新葡亰496net 16

      赋值运算:

      新葡亰496net 17

      逻辑运算:

      新葡亰496net 18

      成员运算:

      新葡亰496net 19

      身价运算:

      新葡亰496net 20

      位运算:

      新葡亰496net 21


     

      运算符优先级:

      新葡亰496net 22

      参见:点击这里

     


     

    九、客商输入

      普通输入:

    1 # Author : YM
    2 name = input("请输入姓名:")    # 括号内为提示输入内容,可按照编程者意愿改变
    3 number = input("请输入学号:")    #同上
    4 print("姓名:", name)    #打印输出
    5 print("学号:", number)    #打印输出
    

      输入密码想要不可以知道:

    1 # Author : YM
    2 import getpass  # 导入getpass模块
    3 username = input("请输入用户名:")
    4 password = getpass.getpass("请输入密码:")    # 使用getpass模块中的getpass方法使得密码输入不可见
    5 print("用户名:", username)
    6 print("密  码:", password)
    

      奉行结果:

    新葡亰496net 23

      强制转变输入:

    1 age = int(input("age:"))  # 强制转换(input()默认所有输入为字符串类型)若所需别的类型则需进行强制转换)
    

      注释:

    • 当行注释:# 被解说内容
    • 多行注释:" " " 被讲明内容 " " " (注意:Python中单引号与双引号未有分裂卡塔 尔(英语:State of Qatar)

     


     

    十、if...else语句

     

     1 # Author : YM
     2 i = int(input("请输入一个整数:"))  # 需要强制转换为整型数据
     3 if i > 15:
     4     print("先判断if语句后的逻辑表达式,若为真则执行此条语句")
     5     print("仍然是if语句为真需要执行的语句")
     6 elif i > 10:
     7     print("如果if语句为假,再判断elif语句后的逻辑表达式,若为真则执行此条语句")
     8     print("仍然是elif后需要执行的语句")
     9 else:
    10     print("以上皆为假逻则执行此条语句")
    11     print("仍然是为假时需要执行的语句")
    12 print("顶格不缩进则代表不属于if模块中的语句,无论真假都要执行"
    

    先推断 if 语句后的逻辑表明式18 > 15 为真

    新葡亰496net 24

    先剖断 if 语句后的逻辑表明式13 > 15 为假,再判别 elif 语句后的逻辑表明式 13 > 10 为真

    新葡亰496net 25

    先判别 if 语句后的逻辑表明式 7 > 15 为假,再判别 elif 语句后的逻辑表达式 7 > 10 为假,则实践 else 语句

     新葡亰496net 26

     


     

    十一、while语句和for语句

      while语句的相仿格局:

    1 while 判断条件:   
    2     语句
    

      程序一:(while)

    1 # Author : YM__while循环
    2 count = 0
    3 while True:   # 条件永真 将一直循环下去
    4     print("*****")
    5     count  = 1   # count计数
    6     if count == 3:
    7         break    # break是跳出当前循环,否则会造成程序死循环
    

      等同代码:

    新葡亰496net 27新葡亰496net 28

    1 # Author : YM
    2 count = 0
    3 while count < 3:   # 条件永真 将一直循环下去
    4     print("*****")
    5     count  = 1   # count计数
    

    Python_while

    新葡亰496net 29

      程序二:(while...else...)

      while...else...语句,当 while 语句后条件为假时实践 else 语句。

    1 # Author : YM
    2 count = 0
    3 while count < 3:
    4     print("*****")
    5     count  = 1   # count计数
    6 else:    # 条件语句为假时执行 else 语句
    7     print("#####")
    

    新葡亰496net 30

     

      for语句:

      使用for语句能够遍历全体成分,比方 每一种出口字符串中的字符,每种输出列表中的元素,元组中的成分,会集中的成分(注意赋值时各要素的相继),字典中的键……

      程序一:(遍历成分卡塔尔

    新葡亰496net 31新葡亰496net 32

    1 # Author : YM
    2 test_str = "逐个输出字符串"  # 列表
    3 print("打印字符串:", test_str)
    4 for i in test_str:
    5     print(i)
    

    每一种出口字符串中的字符    

    新葡亰496net 332.新葡亰496net 34

    1 # Author : YM
    2 test_list = ["逐个", "输出", "列", "表", "中", "的元素"]  # 列表
    3 print("打印列表:",test_list)
    4 for i in test_list:
    5     print(i)
    

    每个出口列表中的成分

    新葡亰496net 353.新葡亰496net 36

    1 # Author : YM
    2 test_tuple = [("a", 1), ("b", 2), ("c", 3), ("d", 4)]
    3 print("输出元组中的元素:", test_tuple)
    4 for (i, j) in test_tuple:
    5     print(i, j)
    

    出口元组中的元素

    新葡亰496net 37新葡亰496net 38

     1 # Author : YM
     2 dictionary = {"writer": "夏目漱石", "country": "Japan", "book": "My Cat, heart"}
     3 print("字典:", dictionary)
     4 print("------------------------------")
     5 print("for 循环直接输出,只会显示关键词:")
     6 for keys in dictionary:
     7     print(keys)
     8 print("------------------------------")
     9 print("在字典后加.values()可以显示值,但是不显示关键词:")
    10 for keys in dictionary.values():
    11     print(keys)
    12 print("------------------------------")
    13 print("在字典后加.items()可以同时显示关键词和值:")
    14 for keys in dictionary.items():
    15     print(keys)
    16 print("------------------------------")
    17 for keys, value in dictionary.items():
    18     print(keys   ":" value)
    

    出口字典中重大字、值

     

    新葡亰496net 39

    新葡亰496net 40

               图(3)                                    图(4)

      

      程序二:(嵌套)

      for 循环求100以内的质数:  

    1 # Author : YM
    2 prime = []
    3 for num in range(2, 100):   # 参数一是开始值(默认从0开始),参数二是结束值,参数三是长度(默认1)
    4     for i in range(2, num):   # 同C的for(i=2,i<num,i  )
    5         if num % i == 0:
    6             break   # 跳出循环
    7     else:
    8         prime.append(num)   # .append()是向列表的尾部添加对象
    9 print(prime)
    

    新葡亰496net 41

     

    •   while循环和for循环,两者的相似点在于都能循环做风姿罗曼蒂克件重复的政工;分歧点在于,while循环是在标准化不树立时停下,for循环是在连串穷尽时截至。

      break与continue:

      break:退出循环(近期的意气风发层循环卡塔 尔(阿拉伯语:قطر‎,甘休全数循环体。

      continue::跳过该次循环,进行下二回的大循环决断(终止当前的大循环进度并不跳出循环,而是继续往下剖断循环条件执行语句.他只得甘休循环中的叁回经过,但不能够止住循环继续打开。卡塔 尔(英语:State of Qatar)

      综合实例(猜大小卡塔尔国:

    新葡亰496net 42新葡亰496net 43

     1 # Author : YM
     2 age_of_OldBoy = 56
     3 count = 0
     4 while count < 3:
     5     guess_age = int(input("guess age:"))
     6     if guess_age == age_of_OldBoy:
     7         print("Yes,you got it...")
     8         break
     9     elif guess_age > age_of_OldBoy:
    10         print("Think more smaller")
    11     else:
    12         print("Think more bigger!")
    13     count  = 1
    14     if count == 3:
    15         countine_confirm = input("Do you want to keep guessing...?")
    16         if countine_confirm != 'n':
    17             count = 0
    18 else:
    19     print("You have tried too many times.")
    

    guess.py

    (ps:全数代码均上机完毕过,无bug,包涵C/C 及Java卡塔 尔(阿拉伯语:قطر‎

     

    胸无点墨,新人风华正茂枚,迎接指正。

     


     

    ---恢复内容起首---

    归来目录页

    python基础一

     

    一、Python介绍

    Python介绍

    一,Python介绍

    1、python的名落孙山和动用

    python的创办者为Guido·范罗苏姆(吉多 van 罗斯尔um卡塔尔。一九八两年的圣诞节中间,吉多·范罗苏姆(中文名字:龟叔卡塔尔为了在雅加达打发时间,决心开辟二个新的台本解释程序,作为ABC语言的意气风发种持续。

    当前Python首要应用领域:

    云计算

    WEB开发

    没有错运算、人工智能

    系统运行

    金融

    图形GUI

    python的出世与使用

      python的创办人为吉多·范罗苏姆(吉多 van Rossum卡塔 尔(阿拉伯语:قطر‎。

      Python崇尚精粹、清晰、简单,是七个佳绩并大规模采取的言语。

    1,python的一败涂地与行使

      python的创始人为吉多·范罗苏姆(吉多 van 罗斯尔um卡塔尔国。1987年的圣诞节以内,吉多·范罗苏姆(汉语名字:龟叔卡塔 尔(阿拉伯语:قطر‎为了在首尔打发时光,决心开采二个新的脚本解释程序,作为ABC语言的大器晚成种持续。  

    (龟叔:二零零六年参加谷歌(Google卡塔 尔(英语:State of Qatar)至二〇一三年,二零一一年参预Dropbox直到今后,照旧左右着Python发展的中坚方向,被堪称仁慈的铁腕卡塔尔国。

    新葡亰496net 44

    二零一七年11月的TIOBE排行的榜单,Python已经占领第四的岗位, Python崇尚优秀、清晰、简单,是一个神乎其神并大范围利用的语言。

    新葡亰496net 45

     

    由上航海用体育地方可以预知,Python全部呈上涨趋向,反映出Python应用越来越平淡无奇况且也稳步获得标准的认可!!!

    Python能够选拔于广大天地,如:数据深入解析、组件集成、互连网服务、图像管理、数值总结和科学计算等超级多领域。这几天职业大概具备大中型互连网厂商都在利用Python,如:Youtube、Dropbox、BT、Quora(中华夏儿女民共和国博客园卡塔 尔(阿拉伯语:قطر‎、豆瓣、果壳网、Google、Yahoo!、推特(TWTR.US)、NASA、百度、腾讯、腾讯汽车、美团等。

    一时Python重要应用领域:

    • 云计算: 云计算最火的语言, 标准应用OpenStack
    • WEB开发: 众多手不释卷的WEB框架,众多种型网址均为Python开拓,Youtube, Dropbox, 豆瓣。。。, 标准WEB框架有Django
    • 没有错运算、人工智能: 典型库NumPy, SciPy, Matplotlib, Enthought librarys,pandas
    • 系统运行: 运转人士必备语言
    • 金融:量化交易,金融深入分析,在经济工程领域,Python不但在用,且用的最多,而且着重渐渐增高。原因:作为动态语言的Python,语言结构清晰轻便,库丰硕,成熟稳固,科学总括和总括深入分析都很牛逼,临蓐成效远远高于c,c ,java,尤其长于计策回测
    • 图形GUI: PyQT, WxPython,TkInter

    Python在部分商铺的使用: 

    • Google:Google App Engine 、code.google.com 、Google earth 、Google爬虫、Google广告等门类都在大方施用Python开垦
    • CIA: United States中情局网址便是用Python开垦的
    • NASA: 美利哥航天局(NASA)大批量利用Python进行数据分析和平运动算
    • YouTube:世界上最大的录制网址YouTube就是用Python开垦的
    • Dropbox:United States最大的在线云存款和储蓄网址,全部用Python实现,天天网址拍卖10亿个公文的上传和下载
    • Twitter:美利哥最大的图纸分享社交网址,每一天当先3千万张照片被分享,全体用python开垦
    • 推特:大批量的底蕴库均通过Python达成的
    • Redhat: 世界上最风靡的Linux发行版本中的yum包管理工科具正是用python开荒的
    • 豆类: 企业差不离具有的事情均是经过Python开拓的
    • 乐乎: 本国最大的问答社区,通过Python开辟(海外Quora)
    • 春雨医务卫生人士:本国赫赫有名的在线医治网址是用Python开发的
    • 除上边之外,还会有乐乎、金山、Tencent、盛大、腾讯网、百度、Ali、天猫商城、马铃薯、天涯论坛、果壳等商店都在利用Python达成丰富多彩标义务。 

    python发展史

    • 壹玖捌捌年,为了消磨圣诞节日假期日,吉多起先写Python语言的编写翻译器。Python这么些名字,来自吉多所挚爱的电视剧Monty Python’s Flying Circus。他梦想那一个新的名字为Python的言语,能适合他的佳绩:成立生机勃勃种C和shell之间,效用周详,易学易用,可进展的言语。
    • 一九九三年,第二个Python编写翻译器诞生。它是用C语言落成的,并可以调用C语言的库文件。从生龙活虎出生,Python已经具备了:类,函数,极度管理,包涵表和词典在内的为主数据类型,以至模块为根基的开展系统。
    • Granddaddy of Python web frameworks, Zope 1 was released in 1999
    • Python 1.0 - January 1994 增加了 lambda, map, filter and reduce.
    • Python 2.0 - October 16, 二〇〇〇,参预了内部存款和储蓄器回笼机制,构成了后天Python语言框架的幼功
    • Python 2.4 - November 30, 二零零一, 同年如今最流行的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

    2、python是何等编制程序语言

    编写翻译语言首要从以下多少个角度进行分拣,编写翻译型和平解决释型、静态语言和动态语言、强类型定义语言和弱类型定义语言。

    2.1编写翻译型语言和平解决释型语言

    编写翻译型语言:当客商写完风流洒脱段代码要求实践的时候,由编写翻译器先把整段代码叁遍性编写翻译成Computer能看懂的二进制文件,然后再实施。那些进程中,如若客户写的代码出错了,编写翻译器就得整段从头开端编写翻译,只是几行也许几页代码的情事下还感觉不出来,不过如若代码由多数行依然上亿行,一句话来说,会浪费广大时间,招致支付速度慢。何况,他不是跨平台的,编写翻译过后的代码在区别操作系统上就不能试行。他的独特之处是运作快,因为只要编写翻译成功,每一次调用只需直接试行就能够

      编写翻译型语言的象征:C语言、C 语言

    解释型语言:当客商写完少年老成段代码要求实行的时候,由解释器黄金时代段少年老成段的表明成计算机能看懂的二进制文件,然后直接推行。与编写翻译型语言分裂的是,假设客户写的代码出错了,解释器无需从头起先,那就能够大大节省了费用时间。况兼他是足以移植的,差别操作系统由分歧的解释器能够解释他。他的宿疾是实施进程慢,每趟施行都急需意气风发行业作风流洒脱行的解释。

      解释型语言的代表:JavaScript、PHP、Python

    python是哪些编制程序语言

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

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

    *  静态语言和动态语言*

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

    2,python是什么样编制程序语言。

    编程语言主要从以下多少个角度为开展分拣,编写翻译型和平解决释型、静态语言和动态语言、强类型定义语言和弱类型定义语言,每一个分类代表怎么样看头呢,大家一块来看一下。

    2.1 编写翻译型与解释型。

    编译器是把源程序的每一条语句都编写翻译成机器语言,并保留成二进制文件,那样运维时Computer能够直接以机器语言来运行此程序,速度高速; 

    解释器则是只在实施顺序时,才一条一条的解释成机器语言给Computer来实行,所以运营速度是比不上编写翻译后的程序运维的快的. 

    那是因为Computer无法一贯认识并进行大家写的言辞,它只好认知机器语言(是二进制的花样)

    新葡亰496net 46

    新葡亰496net 47

     

     

    编译型
    亮点:编写翻译器常常会有预编写翻译的经过对代码进行优化。因为编写翻译只做叁次,运维时无需编写翻译,所以编写翻译型语言的程序实施效用高。能够脱离语言景况独立运行。
    症结:编译之后假如需求匡正就要求整个模块重新编写翻译。编写翻译的时候依据对应的运维情形生成机器码,差异的操作系统之间移植就能不日常,须求依照运营的操作系统意况编写翻译不相同的可实施文件。

    解释型
    亮点:有爱不忍释的阳台宽容性,在别的意况中都可以运作,前提是设置了然释器(设想机卡塔 尔(阿拉伯语:قطر‎。灵活,修正代码的时候一向更正就可以,可以飞速安顿,不用停机维护。

    缺欠:每一次运维的时候都要解释叁遍,质量上不比编写翻译型语言。

    2.2动态语言和静态语言
    万般我们所说的动态语言、静态语言是指动态类型语言和静态类型语言。

    (1卡塔尔国动态类型语言:动态类型语言是指在运转期间才去做数据类型检查的言语,也正是说,在用动态类型的语言编程时,永久也不用给其余变量钦命数据类型,该语言会在您首先次赋值给变量时,在其间将数据类型记录下来。Python和Ruby就是后生可畏种标准的动态类型语言,别的的各样脚本语言如VBScript也多少归于动态类型语言。

    (2卡塔尔静态类型语言:静态类型语言与动态类型语言适逢其会相反,它的数据类型是在编写翻译其间检查的,约等于说在写程序时要注明全数变量的数据类型,C/C 是静态类型语言的特出代表,别的的静态类型语言还会有C#、JAVA等。

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

    (1卡塔尔强类型定义语言:强制数据类型定义的语言。也正是说,大器晚成旦贰个变量被钦点了有个别数据类型,即使不通过强制调换,那么它就长久是这几个数据类型了。举例:如果您定义了贰个整型变量a,那么程序根本不容许将a当做字符串类型管理。强类型定义语言是项目安全的语言。

    (2卡塔 尔(阿拉伯语:قطر‎弱类型定义语言:数据类型能够被忽视的言语。它与强类型定义语言相反, 三个变量能够赋分歧数据类型的值。

    强类型定义语言在进程上恐怕略逊色于弱类型定义语言,可是强类型定义语言带来的严酷性能够使得的幸免过多不当。别的,“那门语言是否动态语言”与“那门语言是还是不是类型安全”之间是一心未有联络的!
    举例:Python是动态语言,是强类型定义语言(类型安全的言语卡塔尔; VBScript是动态语言,是弱类型定义语言(类型不安全的言语卡塔尔; JAVA是静态语言,是强类型定义语言(类型安全的语言卡塔 尔(阿拉伯语:قطر‎。

    经过地方这些介绍,大家得以得出,python是一门动态解释性的强类型定义语言。

    2.2 动态语言与静态语言

      动态语言:动态语言是指在运维的时候才去反省二个变量的数据类型,写程序的时候无需先给叁个变量钦点项目。当首回给变量赋值的时候,该语言会将该变量的数据类型存到内部存款和储蓄器在那之中。Python和Ruby便是数风度翩翩数二的动态语言的象征。

      静态语言:静态语言是指程序在编写翻译的时候就要首先检查各个变量的数据类型,所以客商在写程序早先就要首先注明每一种变量的数据类型。Java、C、C 都以静态语言的意味。

    编写翻译型与解释型

    编译器  先把源程序全部编译成机器语言,并保存成二进制文件,电脑直接以机器语言来运路程序,速度快

    解释器  编写翻译生机勃勃行施行生龙活虎行,速度慢

      Computer不能够一贯认知并执行大家写的言语,它只可以认知机器语言(是二进制的款式)

     

    编译型
      优点:编写翻译器平时会有预编写翻译的经过对代码举办优化。因为编译只做一次,运维时无需编写翻译,所以编译型语言的程序实施功效高。能够脱离语言遇到独立运作。
      缺点:编写翻译之后借使供给改正就需求整人体模型块重新编写翻译。编写翻译的时候依据对应的运作遭受生成机器码,分裂的操作系统之间移植就能够格外,必要依赖运营的操作系统蒙受编写翻译不一样的可实行文件。

    解释型
      优点:有精美的平台包容性,在其余条件中都能够运行,前提是安装领会释器(设想机卡塔尔国。灵活,修正代码的时候一向改变就能够,能够十分的快安插,不用停机维护。

      缺点:老是运转的时候都要分解二回,质量上不比编写翻译型语言。

     

    3,python的利弊。

    先看亮点

    1. Python的长久是“高雅”、“明显”、“简单”,所以Python程序看上去总是轻松易懂,初学者学Python,不但入门轻巧,并且以往深入下去,能够编写制定那一个可怜特别复杂的顺序。
    2. 开辟功效极度高,Python有不行苍劲的第三方库,基本上你想经过Computer完成任何意义,Python官方Curry都有相应的模块进行援救,直接下载调用后,在基本功库的底子上再扩充开垦,大大减少开垦周期,防止再一次造轮子。
    3. 高档语言————当你用Python语言编写程序的时候,你不供给考虑诸如哪些管理你的顺序行使的内部存款和储蓄器生机勃勃类的尾巴部分细节
    4. 可移植性————由于它的开源本质,Python已经被移植在不菲平台上(经过退换使它亦可工作在不一样平台上卡塔尔。假诺您小心地制止接受信任于系统的性格,那么你的全数Python程序不供给校订就差点能够在市道上享有的系统平台上运维
    5. 可扩充性————假若你供给你的风流浪漫段珍视代码运营得更加快如故希望某个算法不公开,你能够把您的有个别程序用C或C 编写,然后在你的Python程序中利用它们。
    6. 可嵌入性————你能够把Python嵌入你的C/C 程序,进而向您的次第客户提供脚本成效。

    再看劣势:

    1. 速度慢,Python 的周转速度相比较C语言确实慢超多,跟JAVA相比较也要慢一些,由此那也是不菲所谓的大牌不屑于使用Python的严重性原因,但骨子里这里所指的运作速度慢在大部景观下客商是无可奈何直接感知到的,必需依据测量检验工具技巧反映出来,比方您用C运三个顺序花了0.01s,用Python是0.1s,那样C语言直接比Python快了10倍,算是那多少个浮夸了,可是你是力不能及直接通过肉眼感知的,因为三个常人所能感知的岁月超级小单位是0.15-0.4s左右,哈哈。其实在大部气象下Python已经完全能够满意你对程序速度的必要,除非您要写对进程必要相当高的索求引擎等,这种景况下,当然依旧建议您用C去落到实处的。
    2. 代码无法加密,因为PYTHON是解释性语言,它的源码都是以名文情势存放的,可是自身不感到那毕竟三个短处,假使您的项目供给源代码必需是加密的,那你风度翩翩开始就不应该用Python来去落实。
    3. 线程不能够采取多CPU难点,那是Python被人责难最多的三个败笔,GIL即全局解释器锁(Global Interpreter Lock卡塔尔国,是微机程序设计语言解释器用于同步线程的工具,使得任何时刻只有二个线程在进行,Python的线程是操作系统的原生线程。在Linux上为pthread,在Windows上为Win thread,完全由操作系统调节线程的施行。三个python解释器进程内有一条主线程,以致多条客商程序的实施线程。纵然在多核CPU平台上,由于GIL的存在,所以禁绝八线程的并行试行。关于这么些主题素材的妥胁解决方法,我们在那后线程和进度章节里再开展详尽搜求。

    当大家编辑Python代码时,大家获得的是二个含有Python代码的以.py为扩展名的公文文件。要运转代码,就必要Python解释器去试行.py文件。

    由于全部Python语言从专门的职业到解释器都是开源的,所以理论上,只要水平够高,任哪个人都可以编写Python解释器来执行Python代码(当然难度超大卡塔 尔(英语:State of Qatar)。事实上,确实存在各类Python解释器。

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

      强类型定义语言:假诺三个变量被赋值为一个数据类型,那么它将永世为该数据类型,除非它被威迫调换(int()、str()卡塔 尔(英语:State of Qatar)。举例说 a = 1 那么以往在给 a 赋值的时候也必须要为整形。

      弱类型定义语言:一个变量能够在分歧的时候被予以不一样数据类型的值。所以,三个变量的数据类型可以被忽略。

    动态语言和静态语言

    动态类型语言:

      动态类型语言是指在运作时期才去做数据类型检查的言语,也正是说,在用动态类型的言语编制程序时,永久也不用给其余变量钦点数据类型,该语言会在您首先次赋值给变量时,在里面将数据类型记录下来。Python和Ruby便是黄金时代种标准的动态类型语言,其余的种种脚本语言如VBScript也许有一点点归属动态类型语言。

    静态类型语言:

      静态类型语言与动态类型语言恰巧相反,它的数据类型是在编译其间检查的,也等于说在写程序时要评释全部变量的数据类型,C/C 是静态类型语言的一流代表,别的的静态类型语言还也许有C#、JAVA等。

    4,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是风度翩翩种动态解释型的强类型定义语言。

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

    强类型定义语言:

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

    弱类型定义语言:

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

    强类型定义语言在进程上只怕略逊色于弱类型定义语言,可是强类型定义语言带来的严苛性能够行得通的制止过多谬误。其它,“那门语言是或不是动态语言”与“那门语言是还是不是类型安全”之间是一心未有联络的!
    比如说:Python是动态语言,是强类型定义语言(类型安全的言语卡塔 尔(英语:State of Qatar); VBScript是动态语言,是弱类型定义语言(类型不安全的言语卡塔尔; JAVA是静态语言,是强类型定义语言(类型安全的语言卡塔尔。

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

    二,python环境

    windows下安装Python(手动增多意况变量卡塔 尔(阿拉伯语:قطر‎以2.7版本举个例子:

     

    windows:

    1
    2
    3
    4
    5
    6
    7
    1、下载安装包
        https://www.python.org/downloads/
    2、安装
        默认安装路径:C:python27
    3、配置环境变量
        【右键计算机】--》【属性】--》【高级系统设置】--》【高级】--》【环境变量】--》【在第二个内容框中找到 变量名为Path 的一行,双击】 --> 【Python安装目录追加到变值值中,用 ; 分割】
        如:原来的值;C:python27,切记前面有分号

    windows下安装Python(自动抬高境况变量卡塔 尔(英语:State of Qatar)以3,.5版本的譬喻:

    1,官方网站下载: 

    2,接受版本。

    新葡亰496net 48

    3,自动抬高情况变量。

    新葡亰496net 49

    4,改革完结。

    新葡亰496net 50

    5,点击安装就可以。

    linux:

    1
    2
    3
    无需安装,原装Python环境
      
    ps:如果自带2.6,请更新至2.7

    3、python的利弊

    优点:

      优雅、明确、简单

      可移植性、可增添性、嵌入性

      开辟功能高

    缺点:

      速度慢

      代码不能够加密

      不可能八线程

    python的利害

     三,python根基初识。

    4、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,而是通过互连网调用来交互作用,确定保证各程序之间的独立性。

      

    优点:

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

      2. 强有力的第三方库

      3. 面向对象

      4. 可移植性

      5. 可扩大性

     

     1,运行python代码。

    在d盘下成立一个t1.py文件内容是:

    print('hello world')
    

    张开windows命令行输入cmd,明确后 写入代码python d:t1.py 

    新葡亰496net 51新葡亰496net 52

    你已经运营了第多个python程序, 即:终端---->cmd-----> python  文件路线。 回车化解~

    二、python情状安排

     

    1 1、下载安装包
    2     https://www.python.org/downloads/
    3 2、安装
    4     默认安装路径:C:python27
    5 3、配置环境变量
    6     【右键计算机】--》【属性】--》【高级系统设置】--》【高级】--》【环境变量】--》【在第二个内容框中找到 变量名为Path 的一行,双击】 --> 【Python安装目录追加到变值值中,用 ; 分割】
    7     如:原来的值;C:python27,切记前面要有英文输入法状态下的分号
    

     

    缺点:

      1. 速度慢

      2. 代码不可能加密

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

     

    2,解释器。

    上一步中实行 python d:t1.py 时,鲜明的提出 t1.py 脚本由 python 解释器来施行。

    假设想要相通于实施shell脚本相同进行python脚本,例: ./t1.py,那么就需求在 hello.py 文件的头顶钦命解释器,如下:

    1
    2
    3
    #!/usr/bin/env python
      
    print "hello,world"

    如此一来,奉行: ./t1.py 即可。

    ps:实行前需赋予t1.py 实践权限,chmod 755 t1.py

    三、python基础

    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,而是通过互连网调用来交互作用,确认保障各程序之间的独立性。

     3,内容编码。

    python2解释器在加载 .py 文件中的代码时,会对剧情实行编码(私下认可ascill卡塔尔,而python3对剧情开展编码的私下认可为utf-8。

    ASCII(American Standard Code for Information Interchange,美利坚合众国行业内部新闻调换代码卡塔尔国是遵照拉丁字母的一套Computer编码系统,首要用来显示今世意大利语和其它西欧语言,其最八只可以用 8 位来代表(贰个字节卡塔尔国,即:2**8 = 256,所以,ASCII码最七只好表示 258个记号。

    Bin(二进制)
    Oct(八进制)
    Dec(十进制)
    Hex(十六进制)
    缩写/字符
    解释
    0000 0000
    0
    0
    00
    NUL(null)
    空字符
    0000 0001
    1
    1
    01
    SOH(start of headline)
    标题开始
    0000 0010
    2
    2
    02
    STX (start of text)
    正文开始
    0000 0011
    3
    3
    03
    ETX (end of text)
    正文结束
    0000 0100
    4
    4
    04
    EOT (end of transmission)
    传输结束
    0000 0101
    5
    5
    05
    ENQ (enquiry)
    请求
    0000 0110
    6
    6
    06
    ACK (acknowledge)
    收到通知
    0000 0111
    7
    7
    07
    BEL (bell)
    响铃
    0000 1000
    10
    8
    08
    BS (backspace)
    退格
    0000 1001
    11
    9
    09
    HT (horizontal tab)
    水平制表符
    0000 1010
    12
    10
    0A
    LF (NL line feed, new line)
    换行键
    0000 1011
    13
    11
    0B
    VT (vertical tab)
    垂直制表符
    0000 1100
    14
    12
    0C
    FF (NP form feed, new page)
    换页键
    0000 1101
    15
    13
    0D
    CR (carriage return)
    回车键
    0000 1110
    16
    14
    0E
    SO (shift out)
    不用切换
    0000 1111
    17
    15
    0F
    SI (shift in)
    启用切换
    0001 0000
    20
    16
    10
    DLE (data link escape)
    数据链路转义
    0001 0001
    21
    17
    11
    DC1 (device control 1)
    设备控制1
    0001 0010
    22
    18
    12
    DC2 (device control 2)
    设备控制2
    0001 0011
    23
    19
    13
    DC3 (device control 3)
    设备控制3
    0001 0100
    24
    20
    14
    DC4 (device control 4)
    设备控制4
    0001 0101
    25
    21
    15
    NAK (negative acknowledge)
    拒绝接收
    0001 0110
    26
    22
    16
    SYN (synchronous idle)
    同步空闲
    0001 0111
    27
    23
    17
    ETB (end of trans. block)
    结束传输块
    0001 1000
    30
    24
    18
    CAN (cancel)
    取消
    0001 1001
    31
    25
    19
    EM (end of medium)
    媒介结束
    0001 1010
    32
    26
    1A
    SUB (substitute)
    代替
    0001 1011
    33
    27
    1B
    ESC (escape)
    换码(溢出)
    0001 1100
    34
    28
    1C
    FS (file separator)
    文件分隔符
    0001 1101
    35
    29
    1D
    GS (group separator)
    分组符
    0001 1110
    36
    30
    1E
    RS (record separator)
    记录分隔符
    0001 1111
    37
    31
    1F
    US (unit separator)
    单元分隔符
    0010 0000
    40
    32
    20
    (space)
    空格
    0010 0001
    41
    33
    21
    !
    叹号
    0010 0010
    42
    34
    22
    "
    双引号
    0010 0011
    43
    35
    23
    #
    井号
    0010 0100
    44
    36
    24
    $
    美元符
    0010 0101
    45
    37
    25
    %
    百分号
    0010 0110
    46
    38
    26
    &
    和号
    0010 0111
    47
    39
    27
    '
    闭单引号
    0010 1000
    50
    40
    28
    (
    开括号
    0010 1001
    51
    41
    29
    )
    闭括号
    0010 1010
    52
    42
    2A
    *
    星号
    0010 1011
    53
    43
    2B
    加号
    0010 1100
    54
    44
    2C
    ,
    逗号
    0010 1101
    55
    45
    2D
    -
    减号/破折号
    0010 1110
    56
    46
    2E
    .
    句号
    00101111
    57
    47
    2F
    /
    斜杠
    00110000
    60
    48
    30
    0
    数字0
    00110001
    61
    49
    31
    1
    数字1
    00110010
    62
    50
    32
    2
    数字2
    00110011
    63
    51
    33
    3
    数字3
    00110100
    64
    52
    34
    4
    数字4
    00110101
    65
    53
    35
    5
    数字5
    00110110
    66
    54
    36
    6
    数字6
    00110111
    67
    55
    37
    7
    数字7
    00111000
    70
    56
    38
    8
    数字8
    00111001
    71
    57
    39
    9
    数字9
    00111010
    72
    58
    3A
    :
    冒号
    00111011
    73
    59
    3B
    ;
    分号
    00111100
    74
    60
    3C
    <
    小于
    00111101
    75
    61
    3D
    =
    等号
    00111110
    76
    62
    3E
    >
    大于
    00111111
    77
    63
    3F
    ?
    问号
    01000000
    100
    64
    40
    @
    电子邮件符号
    01000001
    101
    65
    41
    A
    大写字母A 
    01000010
    102
    66
    42
    B
    大写字母B
    01000011
    103
    67
    43
    C
    大写字母C
    01000100
    104
    68
    44
    D
    大写字母D
    01000101
    105
    69
    45
    E
    大写字母E
    01000110
    106
    70
    46
    F
    大写字母F
    01000111
    107
    71
    47
    G
    大写字母G
    01001000
    110
    72
    48
    H
    大写字母H
    01001001
    111
    73
    49
    I
    大写字母I
    01001010
    112
    74
    4A
    J
    大写字母J
    01001011
    113
    75
    4B
    K
    大写字母K
    01001100
    114
    76
    4C
    L
    大写字母L
    01001101
    115
    77
    4D
    M
    大写字母M
    01001110
    116
    78
    4E
    N
    大写字母N
    01001111
    117
    79
    4F
    O
    大写字母O
    01010000
    120
    80
    50
    P
    大写字母P
    01010001
    121
    81
    51
    Q
    大写字母Q
    01010010
    122
    82
    52
    R
    大写字母R
    01010011
    123
    83
    53
    S
    大写字母S
    01010100
    124
    84
    54
    T
    大写字母T
    01010101
    125
    85
    55
    U
    大写字母U
    01010110
    126
    86
    56
    V
    大写字母V
    01010111
    127
    87
    57
    W
    大写字母W
    01011000
    130
    88
    58
    X
    大写字母X
    01011001
    131
    89
    59
    Y
    大写字母Y
    01011010
    132
    90
    5A
    Z
    大写字母Z
    01011011
    133
    91
    5B
    [
    开方括号
    01011100
    134
    92
    5C
    反斜杠
    01011101
    135
    93
    5D
    ]
    闭方括号
    01011110
    136
    94
    5E
    ^
    脱字符
    01011111
    137
    95
    5F
    _
    下划线
    01100000
    140
    96
    60
    `
    开单引号
    01100001
    141
    97
    61
    a
    小写字母a 
    01100010
    142
    98
    62
    b
    小写字母b
    01100011
    143
    99
    63
    c
    小写字母c
    01100100
    144
    100
    64
    d
    小写字母d
    01100101
    145
    101
    65
    e
    小写字母e
    01100110
    146
    102
    66
    f
    小写字母f
    01100111
    147
    103
    67
    g
    小写字母g
    01101000
    150
    104
    68
    h
    小写字母h
    01101001
    151
    105
    69
    i
    小写字母i
    01101010
    152
    106
    6A
    j
    小写字母j
    01101011
    153
    107
    6B
    k
    小写字母k
    01101100
    154
    108
    6C
    l
    小写字母l
    01101101
    155
    109
    6D
    m
    小写字母m
    01101110
    156
    110
    6E
    n
    小写字母n
    01101111
    157
    111
    6F
    o
    小写字母o
    01110000
    160
    112
    70
    p
    小写字母p
    01110001
    161
    113
    71
    q
    小写字母q
    01110010
    162
    114
    72
    r
    小写字母r
    01110011
    163
    115
    73
    s
    小写字母s
    01110100
    164
    116
    74
    t
    小写字母t
    01110101
    165
    117
    75
    u
    小写字母u
    01110110
    166
    118
    76
    v
    小写字母v
    01110111
    167
    119
    77
    w
    小写字母w
    01111000
    170
    120
    78
    x
    小写字母x
    01111001
    171
    121
    79
    y
    小写字母y
    01111010
    172
    122
    7A
    z
    小写字母z
    01111011
    173
    123
    7B
    {
    开花括号
    01111100
    174
    124
    7C
    |
    垂线
    01111101
    175
    125
    7D
    }
    闭花括号
    01111110
    176
    126
    7E
    ~
    波浪号
    01111111
    177
    127
    7F
    DEL (delete)
    删除

     

    众目昭彰ASCII码不可能将世界上的各样文字和标志全体象征,所以,就必要新出生龙活虎种能够代表全体字符和符号的编码,即:Unicode

    Unicode(统黄金年代码、万国码、单黄金时代码卡塔尔是意气风发种在微处理机上应用的字符编码。Unicode 是为着消除古板的字符编码方案的受制而发出的,它为各样语言中的各样字符设定了合并並且唯生机勃勃的二进制编码,规定虽有的字符和标识起码由 16 位来表示(2个字节卡塔尔,即:2 **16 = 65536,
    注:此处说的的是起码2个字节,或者越来越多

    UTF-8,是对Unicode编码的收缩和优化,他不再使用起码使用2个字节,而是将具有的字符和标志实行归类:ascii码中的内容用1个字节保存、澳洲的字符用2个字节保存,东南亚的字符用3个字节保存...

    所以,python解释器在加载 .py 文件中的代码时,会对剧情实行编码(暗中同意ascill卡塔 尔(英语:State of Qatar),倘使是之类代码的话:

    报错:ascii码不可能表示普通话

    1
    2
    3
    #!/usr/bin/env python
      
    print "你好,世界"

    订正:应该展现的告知python解释器,用哪些编码来推行源代码,即:

    1
    2
    3
    4
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
      
    print "你好,世界"

    1.编写python代码

    在D盘创造一个文书名字为1.py的文本,代码如下

    print("Hello world")
    

     

     按win Wrangler张开运营窗口,输入cmd打开命令窗口、

     

    新葡亰496net 53

     

    在命令行窗口里输入python D:/1.py

    新葡亰496net 54

     

     上图能够看出,以致成功运行该文件代码并且打字与印刷出“Hello World!”

    python底子初识

     4,注释。

    当行注释:# 被疏解内容

    多行注释:'''被讲明内容''',可能"""被讲授内容"""

    2.剧情编码

    解释器在试行代码的时候,须求将代码编写翻译成机器能读懂的二进制码(由1和0重新整合卡塔尔国,而python2版本在编写翻译的时候暗中认可以ASCII码的格式实行退换(也能够内定编码格式卡塔 尔(阿拉伯语:قطر‎,而python3版本在编写翻译的时候默以为utf-8格式进行转移。

      ASCII(American 斯坦dard Code for Information Interchange,美利坚联邦合众国正式消息置换代码卡塔尔是基于拉丁字母的后生可畏套Computer编码系统,主要用于展示现代俄语和别的西欧语言,其最八只可以用 8 位来表示(三个字节卡塔 尔(英语:State of Qatar),即:2**8 = 256,所以,ASCII码最四只可以表示 258个暗号。

      但是,世界上的语言甚至符号远远不只有257个,所以当Computer传入世界各个国家的时候ASCII码已经无法满意我们的行使了,于是应时而生了Unicode(统风度翩翩码、万国码、单生机勃勃码卡塔 尔(英语:State of Qatar),Unicode 是为着缓和守旧的字符编码方案的局限而发生的,它为每一种语言中的各样字符设定了统风流罗曼蒂克何况唯生机勃勃的二进制编码,规定虽有的字符和标记起码由 16 位来表示(2个字节卡塔 尔(阿拉伯语:قطر‎,即:2 **16 = 65536,
    注:此处说的的是起码2个字节,只怕更多

      可是难点来了,友谊Unicode最少2个字节,也便是拾陆人,不过匈牙利语字母以至有些符号根本不需求如此多字节,所以集合用Unicode码的话会大大浪费宝贵的内部存款和储蓄器空间,于是又现身了风姿浪漫种新的编码:UTF-8.该编码格式是对Unicode编码的回退和优化,他不再使用最少使用2个字节,而是将具备的字符和标志进行分拣:ascii码中的内容用1个字节保存、亚洲的字符用2个字节保存,南亚的字符用3个字节保存...

      所以,python解释器在加载 .py 文件中的代码时,会对剧情开展编码(暗许ascill卡塔 尔(英语:State of Qatar),如若是之类代码的话:

    报错:ascii码不能够代表粤语

    print('你好,世界!')
    

    消除措施是,在代码的首行参与以下代码,用来内定编码格式:

    #-*- ecoding:utf-8 -*-
    #这样,就能成功执行并打印出中文“你好,世界!”了。
    

    剧情编码

      python2解释器(默认ascill)

      python3对剧情开展编码的默感觉utf-8。

      ASCII  其最七只可以用 8 位来代表(二个字节卡塔 尔(英语:State of Qatar),即:2**8 = 256,所以,ASCII码最八只可以表示 256 个标识。

     

      Unicode(统意气风发码、万国码、单风流浪漫码卡塔 尔(阿拉伯语:قطر‎是少年老成种在计算机上选用的字符编码。它为各类语言中的每种字符设定了归拢何况唯黄金时代的二进制编码,规定虽有的字符和标识起码由 16 位来表示(2个字节卡塔 尔(英语:State of Qatar),即:2 **16 = 65536,
    注:此处说的的是最少2个字节,只怕更加多

      UTF-8,是对Unicode编码的回退和优化,他不再接受起码使用2个字节,而是将具有的字符和标志进行分拣:ascii码中的内容用1个字节保存

                                                      南美洲的字符用2个字节保存

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

    python2解释器在加载 .py 文件中的代码时,会对剧情打开编码(暗中同意ascill卡塔尔

      #!/usr/bin/env python   搜索解释器地点

      # -*- coding: utf-8 -*-   突显普通话

    5,变量

    变量是哪些?  变量:把程序运转的高级中学级结果有的时候的留存内部存款和储蓄器里,以便后续的代码调用。

    5.1、申明变量

    1
    2
    3
    4
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
      
    name = "taibai"

    上述代码证明了五个变量,变量名字为: name,变量name的值为:"taibai"

    变量的功力:小名,其代指内部存款和储蓄器里有个别地方中保留的剧情

    新葡亰496net 55

     

    5.2、变量定义的法则:

    • 变量名只可以是 字母、数字或下划线的任意组合
    • 变量名的第叁个字符无法是数字
    • 以下重点字不可能声称为变量名
      ['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']
    • 变量的概念要具有可描述性。

    5.3、推荐定义情势

    新葡亰496net 56

    #驼峰体
    
    AgeOfOldboy = 56
    
    NumberOfStudents = 80
    
    #下划线
    
    age_of_oldboy = 56
    
    number_of_students = 80
    

    新葡亰496net 57

    你以为哪类更清楚,哪一类便是官方推荐的,作者想你势必会先第2种,第生机勃勃种AgeOfOldboy咋生机勃勃看认为是AngelaBaby

    5.4、变量的赋值

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    
    name1 = "wupeiqi"
    name2 = "alex"
    

    新葡亰496net 58

     

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    
    name1 = "taibai"
    name2 = name1
    

    新葡亰496net 59

    5.5、定义变量不好的方式举个例子

    • 变量名字为华语、拼音
    • 变量名过长
    • 变量名言不尽意

    3、注释

    当行注释:# 被疏解内容

    多行注释:'''被解说内容''',或许"""被批注内容"""

    注释

      单行注释:# 被讲明内容

      多行注释:'''被解说内容''',也许"""被讲授内容"""

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

           2. 点击小灯泡

           3. 选择 insert documentation string stub

      标记注释:#_TODO(人名)_来得效果菜单  和单行注释大约

    6,常量

    常量即指不改变的量,如pai 3.141592653..., 或在程序运维进度中不会改换的量

    譬喻,假诺老男孩老师的年龄会变,那那正是个变量,但在局部情景下,他的年龄不会变了,那正是常量。在Python中从不一个特意的语法代表常量,程序员蔚成风气用变量名全部大写代表常量

    AGE_OF_OLDBOY = 56
    

    在c语言中有极度的常量定义语法,const int count = 60;假设定义为常量,校订即会报错

    4、变量

    变量:把程序运转的中间结果临时的留存内部存款和储蓄器里,以便后续的代码调用。

    变量

     7,程序人机联作

    新葡亰496net 60

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    
    # 将用户输入的内容赋值给 name 变量
    name = input("请输入用户名:")
    
    # 打印输入的内容
    print(name)
    

    新葡亰496net 61

    执行脚本就能开采,程序会等待你输入人名后再往下持续走。

    能够让客商输入多个新闻,如下

    新葡亰496net 62

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    
    name = input("What is your name?")
    age = input("How old are you?")
    hometown = input("Where is your hometown?")
    
    print("Hello ",name , "your are ", age , "years old, you came from",hometown)
    

    新葡亰496net 63

    4.1扬言变量

    1 #!/usr/bin/env python
    2 #_*_ coding:utf-8 _*_
    3 
    4 name = "bingbing"
    

     

    上述代码注解了三个变量

    变量名称为:name

    变量name的值为:“bingbing”

    变量的效劳:外号,其代值内存里有个别地方中保留的内容

    新葡亰496net 64

    变量定义的国有国法:

    • 变量名只好是 字母、数字下划线的随机组合
    • 变量名的率先个字符无法是数字
    • 以下着重字不能够声称为变量名
    • 变量的概念要有所可描述性。

    8,根底数据类型(开端卡塔 尔(阿拉伯语:قطر‎。

    什么是数据类型?

      大家人类能够超级轻便的分清数字与字符的区分,不过计算机并无法呀,计算机即使很强盛,但从某种角度上看又很傻,除非你肯定的报告它,1是数字,“汉”是文字,不然它是分不清1和‘汉’的区分的,由此,在每种编制程序语言里都会有一个叫数据类型的东东,其实正是对常用的各个数据类型实行了不问可以预知的细分,你想让计算机进行数值运算,你就传数字给它,你想让他处理文字,就传字符串类型给她。Python中常用的数据类型有二种,明日我们暂只讲3种, 数字、字符串、布尔类型

    8.1、整数类型(int卡塔尔。

    int(整型)

    在三11个人机器上,整数的位数为三十四位,取值范围为-2**Python_note1。31~2**31-1,即-2147483648~2147483647

    在陆拾陆位系统上,整数的位数为60人,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807

    long(长整型)

    跟C语言区别,Python的长整数未有一些名位宽,即:Python未有限制长整数数值的尺寸,但实在由于机械内部存储器有数,大家采纳的长整数数值不也许极端大。

    注意,自从Python2.2起,借使整数发生溢出,Python会自动将整数数据转变为长整数,所以今后在长整数数据背后不加字母L也不会变成严重后果了。

    专心:在Python3里不再有long类型了,全是int

    新葡亰496net 65

    >>> a= 2**64
    >>> type(a)  #type()是查看数据类型的方法
    <type 'long'>
    >>> b = 2**60
    >>> type(b)
    <type 'int'>
    

    新葡亰496net 66

    而外int和long之外, 其实还会有float浮点型, 复数型,但明天先不讲啦

    8.2、字符串类型(str卡塔尔。

    在Python中,加了引号的字符都被认为是字符串!

    新葡亰496net 67

    >>> name = "Alex Li" #双引号
    >>> age = "22"       #只要加引号就是字符串
    >>> age2 = 22          #int
    >>> 
    >>> msg = '''My name is Alex, I am 22 years old!'''  #我擦,3个引号也可以
    >>> 
    >>> hometown = 'ShanDong'   #单引号也可以
    

    新葡亰496net 68

    那单引号、双引号、多引号有什么样界别吧? 让自家大声告诉你,单双引号木有任何分歧,唯有上面这种景色你需要考虑单双的分外

    msg = "My name is Alex , I'm 22 years old!"
    

    多引号什么意义吧?功能正是多行字符串必得用多引号

    新葡亰496net 69

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

    新葡亰496net 70

    字符串拼接

    数字能够开展加减乘除等运算,字符串呢?让本身大声告诉您,也能?what ?是的,但必须要实行"相加"和"相乘"运算。

    新葡亰496net 71

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

    新葡亰496net 72

    只顾,字符串的拼凑只可以是双边皆以字符串,无法跟数字或其余项目拼接

    新葡亰496net 73

    >>> type(name),type(age2)
    (<type 'str'>, <type 'int'>)
    >>> 
    >>> name
    'Alex Li'
    >>> age2
    22
    >>> name   age2
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    TypeError: cannot concatenate 'str' and 'int' objects #错误提示数字 和 字符 不能拼接
    

    新葡亰496net 74

    8.3、布尔值(True,False)。

    布尔类型很简短,就五个值 ,二个True(真),三个False(假), 首要用记逻辑剖断

    但实际你们并不知晓对么? let me explain, 笔者现在有2个值 , a=3, b=5 , 笔者说a>b你说创建么? 大家本来知道不创设,但难题是计算机怎么去描述那成不创立吗?可能说a< b是起家,计算机怎么描述那是自力更生呢?

    不容置疑,答案就是,用布尔类型

    新葡亰496net 75

    >>> a=3
    >>> b=5
    >>> 
    >>> a > b #不成立就是False,即假
    False
    >>> 
    >>> a < b #成立就是True, 即真
    True
    

    新葡亰496net 76

    4.2变量定义的规行矩步

     变量名只可以是 字母、数字或下划线的恣意组合

    变量名的率先个字符无法是数字

    以下保护字无法宣称为变量名
    ['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']

    变量的定义要具备可描述性。

    推荐定义格局

    #驼峰体

    AgeOfOldboy = 56
    
    NumberOfStudents = 80
    
    #下划线
    
    age_of_oldboy = 56
    
    number_of_students = 80
    

    9,格式化输出。

    幸存意气风发操演须要,问客户的真名、年龄、职业、爱好 ,然后打印成以下格式

    新葡亰496net 77

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

    新葡亰496net 78

    你怎么贯彻啊?你会意识,用字符拼接的法子还难完结这种格式的出口,所以一齐来学一下新姿态

    只需求把要打字与印刷的格式先打算好, 由于内部的 一些音讯是内需客户输入的,你无法预设知道,因此得以先放置个占位符,再把字符串里的占位符与外表的变量做个映射关系就好啊

    新葡亰496net 79

    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)
    

    新葡亰496net 80

    %s正是表示字符串占位符,除却,还应该有%d,是数字占位符, 要是把上边的age后边的换来%d,就象征你不得不只好输入数字啦

    age     : %d
    

    我们运转一下,然则发掘出错了。。。新葡亰496net 81

    说%d须求三个数字,并不是str, what? 大家掌握输入的是数字呀,22,22呀。

    不用顾虑,不要相信您的肉眼大家调节和测验一下,看看输入的毕竟是否数字呢?怎么看呢?查看数据类型的法子是何许来着?type()

    name = input("Name:")
    age = input("Age:")
    print(type(age))
    

    实践输出是

    Name:Alex
    Age:22
    <class 'str'> #怎么会是str
    Job:IT
    

    让小编大声告诉您,input选用的享有输入暗中同意都以字符串格式!

    要想程序不出错,那如何是好呢?轻巧,你能够把str转成int

    age = int(  input("Age:")  )
    print(type(age))
    

    无可批驳没难点了。相反,能或不可能把字符串转成数字呢?必然能够,str( yourStr )

    主题素材:今后犹如此行代码

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

    这么会报错的,因为在格式化输出里,你现身%默以为正是占位符的%,可是本身想在上边一条语句中最终的十分之八正是意味着七成并不是占位符,如何做?

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

    如此就足以了,第贰个%是对第三个%的转译,告诉Python解释器那只是一个单纯的%,并非占位符。

     4.3引入定义格局

    #驼峰体
    
    bingBingBing = 23
    HaaaaaaHaaaHaa = 12
    
    #下划线
    bing_bing_bing = 23
    ha_ha_ha = 12
    

     

    常量

    常量即指不改变的量

    概念类型为全方位大写

    AGE_OF_OLDBOY = 56
    

    10,基本运算符。

    运算符

      Computer能够张开的运算有不菲种,可不光加减乘除这么轻巧,运算按项目可分为算数运算、比较运算、逻辑运算、赋值运算、成员运算、身份运算、位运算,明天大家暂只学习算数运算、比较运算、逻辑运算、赋值运算

    算数运算

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

    新葡亰496net 82

    比较运算

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

    新葡亰496net 83

    赋值运算

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

    新葡亰496net 84

    逻辑运算

    新葡亰496net 85

    针对逻辑运算的越来越商量:

      1,在未有()的情状下not 优先级高于 and,and优先级高于or,即优先级关系为( )>not>and>or,同生机勃勃优先级从左往右计算。

    例题:

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

    新葡亰496net 86

    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
    

    新葡亰496net 87

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

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

     新葡亰496net 88

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

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

     4.4变量的赋值

    #!/usr/bin/env python
    #_*_ coding:utf-8 _*_
    
    name1 = "bingbing"
    name2 = "haha"
    

     

     
    

     

    #!/usr/bin/env python
    #_*_ conding:utf-8 _*_
    
    name1 = "bingbing"
    name2 = name1
    

    新葡亰496net 89

     

    幼功数据类型(最初卡塔尔

    11,流程序调整制之--if。

      即便把写程序比做走路,那我们到如今截至,一直走的皆以直路,还没有遇上过分叉口,想象现实中,你相逢了分叉口,然后你决定往哪拐必然是负有主见的。你要判定那条岔路是你真正要走的路,借使大家想让程序也能管理那样的判断怎么办? 很简短,只须要在前后相继里预设一些原则推断语句,知足哪些条件,就走哪条岔路。那一个进度就叫流程序调整制。

    if...else 语句

    单分支

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

    双分支

    新葡亰496net 90

    """
    if 条件:
        满足条件执行代码
    else:
        if条件不满足就走这段
    """
    AgeOfOldboy = 48
    
    if AgeOfOldboy > 50 :
        print("Too old, time to retire..")
    else:
        print("还能折腾几年!")
    

    新葡亰496net 91

    缩进

    此处不可不要插入这么些缩进的知识点

    您会意识,上边包车型客车if代码里,各种条件的下风度翩翩行都缩进了4个空格,那是干吗呢?那正是Python的一大特色,强制缩进,目标是为着让程序知道,每段代码注重哪个条件,假使不通过缩进来差距,程序怎会理解,当您的标准化营造后,去实施如何代码呢?

    在别的的语言里,大多通过{}来分明代码块,例如C,C ,Java,Javascript都是那样,看三个JavaScript代码的例证

    新葡亰496net 92

    var age = 56
    if ( age < 50){
      console.log("还能折腾")
        console.log('可以执行多行代码')
    }else{
       console.log('太老了')
    }
    

    新葡亰496net 93

    在有{}来分别代码块的景况下,缩进的效劳就只剩余让代码变的清爽了。

    Python是门拔尖简单的语言,发明者定是感到用{}太丑了,所以干脆直接不用它,那怎么可以分别代码块呢?答案便是强制缩进。

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

    • 一级代码必得顶行写,即若是生机勃勃行代码本身不借助于任何条件,那它必得无法开展别的缩进
    • 同样等第的代码,缩进必得黄金时代致
    • 合法提议缩进用4个空格,当然你也足以用2个,倘令你想被人奚弄的话。

    多分支

    回去流程序调控制上来,if...else ...能够有三个分支条件

    新葡亰496net 94

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

    新葡亰496net 95

    写个猜年龄的游戏吧

    新葡亰496net 96

    age_of_oldboy = 48
    
    guess = int(input(">>:"))
    
    if guess > age_of_oldboy :
        print("猜的太大了,往小里试试...")
    
    elif guess < age_of_oldboy :
        print("猜的太小了,往大里试试...")
    
    else:
        print("恭喜你,猜对了...")
    

    新葡亰496net 97

    地点的例证,根据你输入的值差别,会最多得到3种不一致的结果

    再来个卓殊成绩的小程序吗,战绩有ABCDE5个阶段,与分数的附和关系如下

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

    务求客商输入0-100的数字后,你能准确打字与印刷他的对应成绩

    新葡亰496net 98

    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")
    

    新葡亰496net 99

    此间有个难点,就是当本身输入95的时候 ,它打字与印刷的结果是A,可是95 明明也大于第二个原则elif score >=80:哎呀, 为啥不打字与印刷B呢?那是因为代码是从上到下相继判定,只要满意三个,就不会再往下走啦,那点一定要知道啊!

    5、常量

     常量即指不改变的量,如pai 3.141592653..., 或在程序运营进程中不会变动的量

    大背头品类(int卡塔 尔(阿拉伯语:قطر‎

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

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

    long(长整型卡塔 尔(阿拉伯语:قطر‎在Python3里不再有long类型了,全都是int

    12,流程序调整制之--while循环。

    12.1,基本循环

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

    12.2,循环中止语句 

    设若在循环的进程中,因为某个原因,你不想一而再延续循环了,怎么把它搁浅掉吗?那就用到break 或 continue 语句

    • break用于完全告竣二个巡回,跳出循环体实行循环前面的说话
    • continue和break有一点点相仿,差异在于continue只是终止此次巡回,接着还实践前边的大循环,break则一心止住循环

    例子:break

    新葡亰496net 100

    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 ------")
    

    新葡亰496net 101

    输出

    新葡亰496net 102

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

    新葡亰496net 103

    例子:continue

    新葡亰496net 104

    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 ------")
    

    新葡亰496net 105

    输出

    新葡亰496net 106

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

    新葡亰496net 107

    12.3,while ... else ..

    与此外语言else 平常只与if 搭配区别,在Python 中还会有个while ...else 语句

    while 前面包车型地铁else 功效是指,当while 循环寻常施行完,中间未有被break 中止的话,就能实行else后边的讲话

    新葡亰496net 108

    count = 0
    while count <= 5 :
        count  = 1
        print("Loop",count)
    
    else:
        print("循环正常执行完啦")
    print("-----out of while loop ------")
    

    新葡亰496net 109

    输出

    新葡亰496net 110

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

    新葡亰496net 111

    比方实践进度中被break啦,就不会实施else的语句啦

    新葡亰496net 112

    count = 0
    while count <= 5 :
        count  = 1
        if count == 3:break
        print("Loop",count)
    
    else:
        print("循环正常执行完啦")
    print("-----out of while loop ------")
    

    新葡亰496net 113

    输出

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

    6、程序人机联作(input)

     

    1 #!/usr/bin/env python
    2 #-*- coding: utf-8 -*-
    3 
    4 # 将用户输入的内容赋值给 name变量
    5 name = input("请输入您的姓名:")
    6 age = input("请输入您的年龄:")
    7 #打印输入的内容
    8 print(name, age)
    

    字符串类型(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'
    

    只顾,字符串的拼接只好是双边都以字符串,不可能跟数字或任何类型拼接

    四,相关演练题。

    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、客商登录(一次机会重试卡塔尔国

     

     

    练习题答案:

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

    新葡亰496net 114新葡亰496net 115

    1 count = 0
    2 while count < 10:
    3     count  = 1
    4     if count == 7:
    5         print("  ")
    6     else:
    7         print(count)
    

    View Code

     

      

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

    新葡亰496net 116新葡亰496net 117

    count = 1
    sum = 0
    while count <= 100:
        sum = sum   count
        count = count   1
    print (sum)
    

    View Code

     

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

    新葡亰496net 118新葡亰496net 119

     1 #第一种方法
     2 count = 1
     3 while count < 101:
     4     print(count)
     5     count  = 2
     6 #第二种方法
     7 count = 1
     8 while count < 101:
     9     if count % 2 == 1:
    10         print(count)
    11     count  = 1
    

    View Code

     

    4、输出 1-100 内的全体偶数

    新葡亰496net 120新葡亰496net 121

    1 count = 1
    2 while count < 101:
    3     if count % 2 == 0:
    4         print(count)
    5     count  = 1
    

    View Code

     

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

    新葡亰496net 122新葡亰496net 123

    1 sum = 0
    2 count = 0
    3 while count < 99:
    4     count = count   1
    5     if count % 2 == 1:
    6         sum = sum   count
    7     else :
    8         sum = sum - count
    9 print(sum)
    

    View Code

     

    6、顾客登录(一遍机遇重试卡塔尔国

    新葡亰496net 124新葡亰496net 125

     1 a = 0
     2 
     3 while a < 3:
     4     a  = 1
     5     username = input("请输入用户名:")
     6     password = input("请输入密码:")
     7     if username == "xiaoj" and password == "123456":
     8         print("登录成功!")
     9         break
    10     else:
    11         print("登录失败,请重试!")
    12     continue
    

    View Code

     

    奉行脚本就能够意识,程序会等待你输入名字后再往下继续走

    布尔值(True,False)

    布尔类型超轻便,就多少个值 ,一个True(真),二个False(假), 首要用记逻辑决断

     

    7、底蕴数据类型

    格式化输出

    现存豆蔻年华练兵须要,问客户的人名、岁数、职业、爱好 ,然后打印成以下格式

    7.1、

    int(整形)

    在叁十一位机器上,整数的位数为叁拾叁人,取值范围为-2**31~2**31-1

    在六12个人系统上,整数的位数为陆拾个人,取值范围为-2**63~2**63-1

     

    long(长整形)

    (python3版本已经没有该类型了,不管多长的数,全部为int类型)

    跟C语言不同,Python的长整数没有指定位宽,即:Python没有限制长整数数值的大小,但实际上由于机器内存有限,我们使用的长整数数值不可能无限大。
            该类型不用用户特别定义,当一个数字大到超过int数据类型的范围后将自动转化为long长整形。
            注意:python3版本没有long型了,全部为int类型
    
    1 >>> a= 2**64
    2 >>> type(a)  #type()是查看数据类型的方法
    3 <type 'long'>
    4 >>> b = 2**60
    5 >>> type(b)
    6 <type 'int'>
    

    ------------ 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)
    

     

    7.2字符串类型(str)

    在python中,加了引号的字符都被感到是字符串

    1 name = "bingbing"    #双引号
    2 age = "23"           #只要引号就是字符串
    3 age2 = 23            #int
    4 
    5 msg = '''My name is bingbing, I am 23 years old''' #三个引号也可以
    6 
    7 hometown = 'henan'   #单引号也可以
    
    单引号、双引号、多引号没有任何区别,只有下面情况下,需要考虑单双的配合
    
    msg = "My name is bingbing, I'm 23 years old"
    

    多行字符串就亟须用多引号

    1 msg = '''
    2 你瞅啥
    3 瞅你咋地
    4 你再瞅试试
    5 试试就试试
    6 '''
    7 print(msg)
    

    字符串拼接

    数字能够拓宽加减乘除等运算

    字符串只可以实行"相加"和"相乘"运算

    >>> name = 'bingbing'
    >>> age = '23'
    >>> name   age #相加其实就是简单拼接
    'bingbing23'
    >>> name * 10#相乘其实就是复制自己多少次,再拼接在一起
    'bingbingbingbingbingbingbingbingbingbingbingbingbingbingbingbingbingbingbingbing'
    >>> 
    

    瞩目:字符串的拼接只可以是彼此都以字符串,无法跟数字或任何体系拼接

     

    基本运算符

    7.3布尔值(True, False)

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

     如果a=1,b=2 

    a<b Computer就回到True

    b>a计算机就回去False

    1 >>> a = 1
    2 >>> b = 2
    3 >>> a < b #成立就是True,即真
    4 True
    5 >>> a > b #不成立就是False,即假
    6 False
    

    算数运算

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

    新葡亰496net 126

    8、格式化输出

    现有一练习需求,问用户的姓名、年龄、工作、爱好 ,然后打印成以下格式
    
    ------------ info of fuyong -----------
    Name  : fuyong
    Age   : 29
    job   : none
    Hobbie: girl
    ------------- end -----------------
    
     1 name = input("Name:")
     2 age = input("Age:")
     3 job = input("Job:")
     4 hobbie = input("Hobbie:")
     5 
     6 info = '''
     7 ------------ info of %s ----------- #这里的每个%s就是一个占位符,本行的代表 后面拓号里的 name 
     8 Name  : %s  #代表 name 
     9 Age   : %s  #代表 age  
    10 job   : %s  #代表 job 
    11 Hobbie: %s  #代表 hobbie 
    12 ------------- end -----------------
    13 ''' %(name,name,age,job,hobbie)  # 这行的 % 号就是 把前面的字符串 与拓号 后面的 变量 关联起来 
    14 
    15 print(info)
    

    小心:要是字符串里需求现身‘%’的时候,要求用转义符号来落到实处,如:

    msg = "我是%s,年龄%d的,目前学习进度为10%%"%('兵兵', 23)
    print(msg)
    

    翻看数据类型的主意为type()             

     如type(1) 的结果为int   type('a')的结果为str

    若是一个变量位阿拉伯数字,则该数据足以在int类型与str类型之间相互调换

    正如运算

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

    新葡亰496net 127

    9、基本运算符

    算数运算

    新葡亰496net 128

    正如运算

     新葡亰496net 129

    赋值运算

    新葡亰496net 130

    逻辑运算

    新葡亰496net 131

    注意:

    1、在一贯不()的事态下,not的预先级大于and,and的初期级大于or。即 () > not > and > or 优先级肖似的状态下从左向右总结

    例题:

    判断下列逻辑语句的True,False。

    新葡亰496net 132

    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
    

    新葡亰496net 133

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

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

    新葡亰496net 134

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

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

    3、in,not in :

    看清子成分是还是不是在原字符串(字典,列表,会集卡塔 尔(英语:State of Qatar)中:

    例如:

    1 >>> print("兵兵" in "兵兵你好")
    2 True
    3 >>> print("b" in "bingbing")
    4 True
    5 >>> print("y" not in "bingbing")
    6 True
    

    赋值运算

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

    新葡亰496net 135

     10、流程序调控制--if

    if--else语句

      单分支

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

    新葡亰496net 136新葡亰496net 137

     1 """
     2 if 条件:
     3     满足条件执行代码
     4 else:
     5     if条件不满足就走这段
     6 """
     7 
     8 age = 23
     9 
    10 if age <60:
    11     print("我还能继续工作")
    12 else:
    13     print("该退休了")
    

    View Code

    if语句也能够嵌套使用

    新葡亰496net 138新葡亰496net 139

    1 name = input('请输入用户名:')
    2 password = input('请输入您的密码')
    3     if name == 'fuyong' :
    4             if password == '123'
    5                 print('恭喜您,登录成功')
    6     else:
    7         print('抱歉,用户名或者密码错误!')   
    

    if嵌套

    缩进
    

    Python的缩进有以下多少个规格:

    • 头等代码必需顶行写,即假使意气风发行代码自个儿不依赖于于其余条件,那它必得无法进行任何缩进
    • 后生可畏致级其他代码,缩进必需生龙活虎致
    • 官方提出缩进用4个空格,当然你也得以用2个,若是你想被人捉弄的话。
    多分支
    回到流程控制上来,if...else ...可以有多个分支条件
    

    新葡亰496net 140新葡亰496net 141

     1 if 条件:
     2     满足条件执行代码
     3 elif 条件:
     4     上面的条件不满足就走这个
     5 elif 条件:
     6     上面的条件不满足就走这个
     7 elif 条件:
     8     上面的条件不满足就走这个    
     9 else:
    10     上面所有的条件不满足就走这段
    

    View Code

    新葡亰496net 142新葡亰496net 143

     1 num = input('请输入一个数字'):
     2 
     3 if num == 1:
     4     
     5     print("您选择的是1号")
     6 
     7 elif  num == 2:
     8     
     9     print("您选择的是2号")
    10 
    11 elif num == 3:
    12     
    13     print('您选择的是3号')
    14 
    15 else:
    16        print('输入有误,请在1、2、3中选择')
    

    if多分支

    逻辑运算

    新葡亰496net 144

     

    针对逻辑运算的更为钻探:

      1,在从来不()的情形下not 优先级高于 and,and优先级高于or,即优先级关系为( )>not>and>or,同黄金年代优先级从左往右总结。

    例题:

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

    新葡亰496net 145

    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
    

    新葡亰496net 146

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

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

     新葡亰496net 147

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

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

    in,not in :

    剖断子成分是不是在原字符串(字典,列表,群集卡塔 尔(英语:State of Qatar)中:

    例如:

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

    11、流程序调节制--while

    11.1,基本循环

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

    11.2,循环中止语句

    break用于完全结束一个周而复始,跳出循环体施行循环前面包车型客车言辞

    ontinue和break有一些相通,差距在于continue只是终止本次巡回,接着还施行后边的循环,break则统统结束循环

    例如break

    新葡亰496net 148新葡亰496net 149

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

    break

    例如continue

    新葡亰496net 150新葡亰496net 151

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

    continue

    11.3while...else...

    while 前边的else 效用是指,当while 循环符合规律奉行完,中间未有被break 中止的话,就能够施行else前边的语句

    新葡亰496net 152新葡亰496net 153

    1 count = 0
    2 while count <= 5:
    3     count  = 1
    4     print(count)
    5 else:
    6     print("循环正常执行完啦")
    

    while...else...

    只要实行进度中被break啦,就不会实践else的语句啦

    新葡亰496net 154新葡亰496net 155

    1 count = 0
    2 while count <= 5:
    3     count  = 1
    4     if count == 3:
    5         break
    6     print(count)
    7 else:
    8     print("循环正常执行完啦")
    

    while..else..break

    流程序调控制之--if

    四、练习题

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

    新葡亰496net 156新葡亰496net 157

    1 sum = 0
    2 while sum < 10:
    3     sum  = 1
    4     if sum == 7:
    5         print(" ")
    6         continue
    7     print(sum)
    

    答案1

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

    新葡亰496net 158新葡亰496net 159

    1 a = 0
    2 sum = 0
    3 while a <= 100:
    4     sum  = a
    5     a  = 1
    6 print(sum)
    

    新葡亰496net,答案1

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

    新葡亰496net 160新葡亰496net 161

    1 a = 1
    2 while a <= 100:
    3     if a % 2 == 1:
    4         print(a)
    5     a  = 1
    

    答案1

    4、输出 1-100 内的具备偶数

    新葡亰496net 162新葡亰496net 163

    1 a = 1
    2 while a <= 100:
    3     if a % 2 == 0:
    4         print(a)
    5     a  = 1
    

    答案1

    5、求1-2 3-4 5 ... 99的全体数的和

    新葡亰496net 164新葡亰496net 165

    1 a = 1
    2 sum = 0
    3 while a <= 100:
    4     if a % 2 == 1:
    5         sum -= a
    6     else:
    7         sum  = a
    8     a  = 1
    9 print(sum)
    

    答案1

     

    6、客户登录(贰回机会重试卡塔 尔(英语:State of Qatar)

    ---恢复生机内容甘休---

    单分支

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

    双分支

    新葡亰496net 166

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

    缩进

    Python的缩进有以下多少个尺码:

    • 超级代码必须顶行写,即只要后生可畏行代码自个儿不依赖于别的条件,那它必得不能够张开其余缩进
    • 未有差距于等第的代码,缩进必需生龙活虎律
    • 合法提出缩进用4个空格。

    多分支

    回到流程序调节制上来,if...else ...能够有八个分支条件

    新葡亰496net 167

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

    新葡亰496net 168

    写个猜年龄的游戏吧

    新葡亰496net 169

    age_of_oldboy = 48
    
    guess = int(input(">>:"))
    
    if guess > age_of_oldboy :
        print("猜的太大了,往小里试试...")
    
    elif guess < age_of_oldboy :
        print("猜的太小了,往大里试试...")
    
    else:
        print("恭喜你,猜对了...")
    

    新葡亰496net 170

    地方的事例,根据你输入的值不一样,会最多获得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、客商登录(一次机缘重试卡塔尔国

    本文由新葡亰496net发布于奥门新萄京娱乐场,转载请注明出处:Python_note1

    关键词: