【Python基础语法入门】

Python基础语法

文章目录

  • Python基础语法
  • @[toc]
  • 1.常用的两种字面量
  • 2.注释
  • 3.变量
  • 练习1
  • 4.数据类型
  • 5.数据类型的转换
  • 6.标识符
  • 7.运算符
  • 8.字符串扩展
  • 练习1
  • 练习2
  • 声明
  • 1.常用的两种字面量
  • 在代码中,被写下来的固定的值,称之为字面量
  • 类型 描述 说明
    数字Number int,float,complex,bool[整数,浮点数,复数,布尔] 10,-10;13.14;4+3j;False,True.【本质上True一个数字,记为1,False记为0
    字符串String 描述文本 由任意数量的字符组成【要打引号
    print(666)
    print(13.14)
    print("hello,world")
    
    # 输出结果
    
    '''
    666
    13.14
    hello,world
    '''
    

    2.注释
  • 单行注释:以#开头,建议空格隔开

  • 多行注释:以一对三个双引号包括起来

  • # 单行注释
    
    """
    这是一个多行注释
    """
    

    3.变量
  • 定义:形式为变量名称=变量的值,能存储结果或能表示值,简单来说就是记录数据
  • my_money = 12000
    my_money = my_money - 20
    print("my money:",my_money)
    print("my money:",my_money,"yuan")
    
    # 输出结果
    
    '''
    my money: 11980
    my money: 11980 yuan
    '''
    
    练习1

    钱包初始余额50元,冰淇淋10元,可乐5元,买m个冰淇淋和k个可乐后还剩多少元,用print语句表示。

    money = 50
    m = 1
    k = 2
    icecream = 10
    cola = 5
    
    print("钱包剩余的钱:",money - m*icecream - k*cola,"元")
    
    # 输出结果
    
    '''
    钱包剩余的钱: 30 元
    '''
    

    4.数据类型
  • type()语句
  • x = 242.1231
    y = "Allen哈哈哈"
    z = 31231
    x1 = type(x)
    y1 = type(y)
    z1 = type(z)
    
    #输出方式1:使用print直接输出
    print(type(242.1231),type("Allen哈哈哈"),type(31231))
    
    #输出方式2:使用变量存储type()语句的结果
    print(x1,y1,z1)
    
    #输出方式3:使用type查看变量存储的数据类型
    print(type(x),type(y),type(z))
    
    # 输出结果
    
    '''
    <class 'float'> <class 'str'> <class 'int'>
    <class 'float'> <class 'str'> <class 'int'>
    <class 'float'> <class 'str'> <class 'int'>
    '''
    

    5.数据类型的转换
  • int(x):将x转换为一个整数
  • float(x):将x转换为一个浮点数
  • str(x):将x转换为字符串
  • q = 10.912
    w = 120
    e = "Allen哈哈哈"
    q1 = int(q)
    q2 = str(q)
    w1 = float(w)
    w2 = str(w)
    
    print(int(10.912),str(10.912),float(120),str(120))
    print(int(q),str(q),float(w),str(w))
    print(type(int(q)),type(str(q)),type(float(w)),type(str(w)))
    print(q1,q2,w1,w2)
    
    # 输出结果
    
    '''
    10 10.912 120.0 120
    10 10.912 120.0 120
    <class 'int'> <class 'str'> <class 'float'> <class 'str'>
    10 10.912 120.0 120
    '''
    

    int(-10.912)=-10


    6.标识符
  • 标识符:用户在编程的时候所使用的一系列的名字。在python代码中我们可以给很多东西起名字,例如【变量的名字】,【方法的名字】,【类的名字】等等
  • 内容限定:只允许英文、中文、数字、下划线,但【不推荐使用中文】;数字不可以开头
  • 大小写敏感:大小写完全可以区分,例如A=1,a=2,print(A,a)结果为1 2
  • 不可使用关键字
  • "False", "True", "None", "and", "as", "assert", "break", "class", "continue", "def", "del", "elif", "else", "except", "finally", "for", "from", "global", "if", "import", "in", "is", "lambda", "nonlocal", "not", "or", "pass", "raise", "return", "try", "while", "with", "yield"
    

    7.运算符
    运算符 描述 实例
    + – * / 加减乘除基本运算 显然
    // 取整(向下取整?) 9//2结果为4,9.32//2.1=4,-9.3//3=-4.0
    % 取余 9%2结果为1
    ** 指数 同理
    = 赋值运算符 同理
    += 加法赋值运算符 c+=1 #c=c+1
    -= 同理 同理
    *= 同理 同理
    /= 同理 同理
    %= 同理 同理
    **= 同理 同理
    //= 同理 同理

    8.字符串扩展
  • 字符串的三种定义方式:单引号定义法、双引号定义法、三引号定义法。
  • my_name = 'allen'
    her_name = "linda"
    his_name = '''make'''
    your_name = '''m
    a
    k
    e
    '''
    
    print(my_name,her_name,his_name,your_name)
    
    
    # 输出结果
    '''
    allen linda make m
    a
    k
    e
    '''
    
    
    # 注意:使用变量接收三引号,则其就是字符串。不使用变量接收,则作为多行注释。
    
  • 字符串的引号嵌套:单引号可以内含双引号,双引号可以内含单引号,\为转移字符,可以用来解除引号效用,使其变为普通字符串
  • mike = "'football'"
    linda = '"swim"'
    tom = '\'basketball\''
    allen = "\"badminton"
    print(mike)
    print(linda)
    print(tom)
    print(allen)
    
    # 输出结果
    
    '''
    
    'football'
    "swim"
    'basketball'
    "badminton
    
    '''
    
  • 字符串的拼接:可以使用”+“进行拼接
  • my_name = 'allen'
    her_name = "linda"
    his_name = '''make'''
    
    print(my_name,her_name,his_name)
    
    saying = "我的电话号码是"
    phone_number = "124352467"
    print("我的电话号码是" + "141252412")
    print(saying + "132414124")
    print("我的电话号码是" + phone_number + ",不对,错了")
    print(saying + phone_number)
    
    # 输出结果
    
    '''
    我的电话号码是141252412
    我的电话号码是132414124
    我的电话号码是124352467,不对,错了
    我的电话号码是124352467
    '''
    

    注意:只能是字符串类型可以用”+“拼接,其他类型不行

  • 字符串格式化:“%占位符号” %变量
  • 常用的占位符
  • 格式符号 转化
    %s 将内容转换成字符串,放入占位位置
    %d 将内容转换成整数,放入占位位置
    %f 将内容转换成浮点型,放入占位位置
    name = "mike"
    number = 124212414
    who = "me"
    qq = 12414112412
    sore = 98.99
    year = 19
    
    saying1 = name + "'s phone number is %s" %number
    saying2 = name + "'s phone number is %s" %number + ",are you agree with %s ? " %who
    saying3 = name + "'s phone number is %s,and his qq number is %s" %(number,qq)
    saying4 = "my name is %s,I am %d years old,my sore is %f" %(name,year,sore)
    
    print(saying1)
    print(saying2)
    print(saying3)
    print(saying4)
    
    # 输出结果
    
    '''
    mike's phone number is 124212414
    mike's phone number is 124212414,are you agree with me ? 
    mike's phone number is 124212414,and his qq number is 12414112412
    my name is mike,I am 19 years old,my sore is 98.990000
    '''
    
  • 格式化的精度控制:m.n用来控制数据的宽度和精度
  • number1 = 12.2412
    number2 = 222.15
    number3 = -3.321
    number4 = -1.46
    number5 = 12
    number6 = -12
    
    print("number1经过宽度2控制后结果为%2d" %number1)
    print("number2经过宽度2控制后结果为%2d" %number2)
    print("number3经过宽度3控制后结果为%3d" %number3)
    print("number4经过宽度4控制后结果为%4d" %number4)
    print("number5经过宽度5控制后结果为%5d" %number5)
    print("number6经过宽度7控制后结果为%7d" %number6)
    print("number1经过宽度3位数2控制后结果为%3.2f" %number1)
    print("number2经过宽度1位数3控制后结果为%1.3f" %number2)
    print("number3经过宽度6位数2控制后结果为%6.2f" %number3)
    print("number4经过宽度4位数6控制后结果为%4.6f" %number4)
    print("number5经过宽度7位数2控制后结果为%7.2f" %number5)
    print("number6经过宽度5位数1控制后结果为%5.1f" %number6)
    print("number4经过不限宽度数1控制后结果为%.1f" %number4)
    
    # 输出结果
    
    '''
    number1经过宽度2控制后结果为12
    number2经过宽度2控制后结果为222
    number3经过宽度3控制后结果为 -3
    number4经过宽度4控制后结果为  -1
    number5经过宽度5控制后结果为   12
    number6经过宽度7控制后结果为    -12
    number1经过宽度3位数2控制后结果为12.24
    number2经过宽度1位数3控制后结果为222.150
    number3经过宽度6位数2控制后结果为 -3.32
    number4经过宽度4位数6控制后结果为-1.460000
    number5经过宽度7位数2控制后结果为  12.00
    number6经过宽度5位数1控制后结果为-12.0
    number4经过不限宽度数1控制后结果为-1.5
    '''
    

    注意:如果m比数字本身宽度还小,此时m不生效。精度控制会进行四舍五入。

  • 字符串的格式化快速写法:f"内容{变量}"的格式快速格式化(不关注变量类型,不做精度控制),适合对精度没有要求的时候快速使用。
  • name = "allen"
    year = 13
    score = 98.9
    print(f"my name is {name},I am {year} years old,my score is {score}.")
    
    # 输出结果
    
    '''
    my name is allen,I am 13 years old,my score is 98.9.
    '''
    
  • 对表达式(表达式就是一个具有明确结果的代码语句)进行格式化:在无需使用变量进行数据存储的时候,可以直接格式化表达式,以此简化代码
  • # 字符串格式化形式1
    name = "allen"
    year = 13
    add_year = 3
    saying = "my name is %s,I am %d years old" %(name,year) + ",three years latter,I will be %d years old" %(13 + add_year) + ",my score is %f" %(98+0.34)
    print(saying)
    print("my name is %s,I am %d years old" %(name,year) + ",three years latter,I will be %d years old" %(13 + add_year) + ",my score is %f" %(98+0.34))
    
    # 字符串格式化形式2
    print(f"my name is {'all'+'en'},I am {10 + 3} years old,three years latter,I will be {13 + 3} years old,my score is {7 * 14 + 0.34}")
    
    # 输出结果
    
    '''
    my name is allen,I am 13 years old,three years latter,I will be 16 years old,my score is 98.340000
    my name is allen,I am 13 years old,three years latter,I will be 16 years old,my score is 98.340000
    my name is allen,I am 13 years old,three years latter,I will be 16 years old,my score is 98.34
    '''
    
    练习1

    股价计算程序

    name = "终身学习"
    stock_price = 20.11
    stock_code = "000001"
    growth_factor = 1.1
    growth_days = 8
    print(f"公司:{name},股票代码:{stock_code},当前股价:{stock_price}")
    print("每日增长系数是:%.1f,经过%d天增长后,股价达到了:%.2f" %(growth_factor,growth_days,stock_price*(1.1**8)))
    
    # 输出结果
    
    '''
    公司:终身学习,股票代码:000001,当前股价:20.11
    每日增长系数是:1.1,经过8天增长后,股价达到了:43.11
    '''
    
  • 数据输入:input()语句能够获取键盘输入的数据;可以使用input(这里写提示信息),用以在使用者输入内容之前显示提示信息;要注意,无论键盘输入什么类型的数据,获取到的数据永远都是字符串类型。
  • # 使用示例1
    print("请输入你的名字:")
    name = input()
    print("我知道了,你的名字是:", name)
    
    # 使用示例2
    name = input("请输入你的名字:")
    print("我知道了,你的名字是:",name)
    
    # 关于第3个要点的展示
    number = input("请输入你的学号:")
    print("你的学号类型是:", type(number))
    number = int(number)
    print("经过int转换后,你的学号类型是:", type(number))
    
    # 输出结果
    
    '''
    请输入你的名字:
    12er1
    我知道了,你的名字是: 12er1
    请输入你的名字:afsfg
    我知道了,你的名字是: afsfg
    请输入你的学号:245363515
    你的学号类型是: <class 'str'>
    经过int转换后,你的学号类型是: <class 'int'>
    '''
    
    练习2

    登录程序

    # 第一次
    user_name = input("请输入您的用户名:")
    password = input("请输入您的密码:")
    
    if user_name == "21312" and password == "12412412":
        print("您好,欢迎登录")
    else:
        print("用户名或者密码错误,请重新输入")
        
    # 第二次
    user_name = input("请再次输入您的用户名:")
    password = input("请再次输入您的密码:")
    
    if user_name == "21312" and password == "12412412":
        print("您好,欢迎登录")
    else:
        print("用户名或者密码错误,请重新启动运行")
        
    # 输出结果
    
    '''
    请输入您的用户名:1245
    请输入您的密码:1253637
    用户名或者密码错误,请重新输入
    请再次输入您的用户名:21312
    请再次输入您的密码:12412412
    您好,欢迎登录
    '''
    
    声明

    本笔记由本人学习【黑马程序员】课程及相关资料整理而来,代码均为自行创作。

    作者:数学系的计算机玩家

    物联沃分享整理
    物联沃-IOTWORD物联网 » 【Python基础语法入门】

    发表回复