zoukankan      html  css  js  c++  java
  • Python基础(1)

    Python基础

    语言类型:解释型和编译型


    编译型:一次性将所有代码编译成二进制文件
    优点:运行速度快。
    缺点:开发效率低(一步走错,满盘皆输);不能跨平台(跨系统)
    编译型语言有:c;c++; Go; swift; object; pascal;等等

    解释型:当程序运行时,一行一行地解释
    优点:开发效率高;可以跨平台;
    缺点:运行速度慢(但一般人感觉不出来)
    解释型语言有:Python; PHP; JavaScript; Ruby; Perl; Erlang;等等

    混合型语言有:JAVA; C#;

    Python2x和Python3x宏观上的区别:Python2x的源码重复率高,不规范。而Python崇尚的是:简单、优美、清晰。所以
    龟叔创建了Python3x,更加规范。
    Python是一门动态解释性的强类型定义语言。

    Python解释器(编译器)有:cpython; jypython; lronpython; pypy;
    不同解释器的不同之处,例cpython:
    将标准Python代码通过cpython解释器转换为C语言能识别的字节码,再将其转化为二进制传递给CPU执行
    其他的解释器与cpython类似,例jypython:将标准Python代码通过jypython解释器转换为Java语言能识别的字节码,再将其转化为二进制传递给CPU执行
    和以上不同的是pypy类似于编译型解释器,将代码一次性全部编译完成后再运行,运行速度相对较快但开发效率相对较低。

    解决Python2x中文报错的方法:在首行增加一行: # -*- encoding:utf-8 -*- 即可。
    1 # -*- encoding:utf-8 -*- 

    变量:由数字、字母、下划线任意组合,且不能以数字开头,变量名称要具有可描述性,变量名称不能是关键字。不去用中文或拼音。

    不能用关键字做变量名称:

    #A         and;   as;   assert;
    #B break;
    #C class; continue;
    #D def; del;
    #E elif; else; except;
    #F False; finally; for; from;
    #G global;
    #I if; import; in; is;
    #L lambda;
    #N None; nonlocal; not;
    #O or;
    #P pass;
    #R raise; return;
    #T True; try;
    #W while; with;
    #Y yield;
    常量:
    约定俗成,不可更改,全部大写字母
    注释:
    单行注释:#
    多行注释:首尾用''' ''' 或 """ """
    用户交互:
    类似于QQ登录界面;使用input(),例如:
    1 name =input("请输入你的名字: ")
    2 age =input("请输入你的年龄: ")
    3 print(name ,age,type(age))
    4 
    5 name = input("请输入你的名字: ")
    6 age = input("你的年龄是:")
    7 print("我的名字是:"+name,"我的年龄是: "+age+"")
    ps:input的结果都是str(字符串)

    数据类型:
    布尔值:
    bool 布尔值只有两种状态: True和False (不用加引号) True为真(1) False为假(0)
    整数:
    int 运算方法:+-*/(四则运算) **(幂) //(整除) %(取余)
    a = 12
    b = 7
    print(a+b)
    print(a-b)
    print(a/b)
    print(a*b)
    print(a//b)
    print(a%b)   # 12/7=1......5

    数字的取值范围:

    32位: -2**31 ~ 2**31-1

    64位: -2**63 ~ 2**63-1

    字符串:str;
    所有用引号引起来的全都是字符串,单引号、双引号都可以(个别情况下自行斟酌)
    字符串之间可相加,例如: print("my "+"name "+"is "+"xxx!") 打印的结果为: my name is xxx!
    字符串内可以是任何类型的数据,包括特殊字符,下划线,中英文,空格,数字等等。
    字符串可以相乘,前提是只能和整数相乘,str*int ,
    例如 print("六"*6)打印的结果为: 六六六六六六六

    三个引号除了可以用来注释外还有另一种用法:
    将内容用三个引号引起来(单引号、双引号都可以),
    再将它赋值给一个变量就可以打印出多行的字符串,例如:
    computer = '''
    CPU;
    SSD;
    显卡;
    内存;
    HDD;
    显示器;
    '''
    print(computer)

    if 条件语句:满足条件之后才能执行的语句
    用if(开头);elif(或者,用于多选);else(不符合条件)
    缩进用“Tab”键,取消缩进使用“Shift”+“Tab”。
    可以使用四个空格缩进,但不可以和“Tab”混着用。

    第一种格式:单项选择
    if 条件 :
    结果

    第二种格式:双项选择
     if 条件 :
    结果
    else :
      结果
    例如(以下为两个双项选择组成的嵌套):
    user = int(input("账号:"))
    key = int(input("密码:"))
    if user==aires :
        if key==123123 :
            print("welcome")
        else:
            print("你是谁,别动我电脑")
    else :
        print("辣鸡,滚蛋!")
    第三种格式,多项选择
    if 条件 :
    结果:
    elif 条件 :
    结果
    elif 条件:
    结果
    else :
    结果
    例如:
    num = int(input("请输入你的成绩:"))
    if num >= 100 :
        print("S 牛逼!")
    elif num >= 90 :
        print("A 优秀!")
    elif num >= 70 :
        print("B 中等!")
    elif num >= 60 :
        print("C 及格! ")
    else:
        print("辣鸡,退学吧!")
    ps:if s :     #这里的s 后面什么都不写,等同于 s == “”(s的内容为空)
        print(您输入的内容为空,请重新输入!)
    while 循环语句

    格式:
    while 条件 :
    需要循环的内容
    ps:while与冒号之间的是条件
    例如用自循环打印出1~50:
    num = 1
    flag = True     #flag为“标志符”
    while flag :
        print(num)
        num = num+1    #自加1
        if num > 50 :     #结合条件语句终止循环
            flag = False
    还可以设定循环条件
    num = 1
    while num <= 50 :
        print(num)
        num = num + 1
    利用while循环计算1~50之间的和
    num = 1
    num2 = 0
    while num <= 50 :
        num2 = num2 + num
        num = num + 1
    print(num2)
    以上的流程为:
    设定变量1=1
    设定变量2=0
    开始循环 设定条件: 变量1<=50
    变量2(1)=变量2(0)+ 变量1(1) #先计算等于号右边,再赋值给左边
    变量1(2)=变量1(1)+1 #循环 #同上

    变量2(3)=变量2(1)+变量1(2)
    变量1(3)=变量1(2)+1

    变量2(6)=变量2(3)+变量1(3)
    变量1(4)=变量1(3)+1
    循环至条件不满足
    终止循环的方法:
    1、改变条件,使条件不成立
    2、在需要终止的地方加上“break”,直接跳出循环;或结合条件语句:if,设定break。
    例如:打印1~50
     num = 1
     while Ture :
         print(num)
         num = num + 1
         if num > 50 : break
    3、“continue”结束本次循环,继续下一次循环;
    也就是说,循环遇到continue将不再继续向下循环,而是重复上面的循环过程,例如:
    num = 0
        while num <= 100 :
        num = num + 1
        if num > 5 and num < 95 :   #如果num大于5并且小于95
            continue                #那就重新循环
        print("hehe",num)           #当循环不满足条件语句时,打印内容 
    print("end")                  #循环结束,打印内容
    使用循环语句(while)结合条件语句(if)写一个用户交互程序(有三次输入错误的机会)
    num = 0         
    while num < 3 :
        user = input("账号:")
        key = int(input("密码:"))
        if user == "user@aires" and key == 123123 :
            print("Hello world!")
            break
        else :
            print("fuke you!")
        num += 1

    以上代码由上至下解释:

    第一:确定循环初始次数

    第二:确定循环条件

    第三:设定交互内容,赋值给变量

    第四:同上

    第五:设定条件语句

    第六:如果条件符合,打印内容

    第七:退出

    第八:如果不符合,打印内容

    第九:循环次数自加,当次数不满足循环条件后,程序结束。

    while else:当while循环被break打断,就不会去执行else的结果。
    
    

     



    后人发,先人至。扎实的基础可以更快的铸就高楼大厦!
  • 相关阅读:
    解决安装postgresql安装报An error occurred executing the Microsoft C++ runtime installer.问题
    使用U盘为龙芯笔记本安装操作系统
    年终复盘与展望(2017年)
    年终复盘与展望(2016年)
    Spark log4j 配置
    R语言码农的Scala学习心得
    在集群上运行Spark应用
    通过 Spark R 操作 Hive
    CentOS 6.7 hadoop free版本Spark 1.6安装与使用
    OS X Maven 安装与使用简介
  • 原文地址:https://www.cnblogs.com/aries-zhang/p/10294443.html
Copyright © 2011-2022 走看看