• Python——基础


    一、变量

    1.变量定义

    一块用来存储数据的空间

    2.变量命名规则

    硬性规则:
    (1)必须由数字、字母、下划线构成,不能含有特殊符号
    (2)数字不能开头
    (3)变量名不能和python的关键字重复
    注意:区分大小写
    软性规则:
    (1)命名尽量使用描述性的单词来表示;
    (2)一个单词描述不清楚,可多个单词
    驼峰法:除了第一个单词的首字母之外,后续每个单词的首字母都大写
    蛇形命名:单词之间使用下划线分隔

    3.使用变量

    a = 10  #创建变量(初始化)
    b = a  #修改a的内容(赋值)
    
    • 1
    • 2

    4.变量的类型

    利用type()判断变量的类型

    (1)整型 int

    在python中,int能够表示的数据范围是“无穷的”,根据数据的大小,自动扩容(没有long这些类型)

    (2)浮点数 float

    Python中的float是双精度浮点数,等同于C++/Java里的double

    (3)字符串 string

    引号使用单引号或者双引号都可,引号引起来的字符构成字符串
    注意:
    字符串里面包含了双引号,表示字符串就可以用单引号引起来;
    字符串里面包含了单引号,表示字符串就可以使用双引号引起来;
    同时有单引号和双引号,利用三引号

    a = "My name is 'sxl'"
    b = 'My name is "sxl"'
    c = '''My 'name' is "sxl"'''
    
    
    • 1
    • 2
    • 3
    • 4

    Ⅰ、字符串的个数:len()

    print(len(a))
    
    • 1

    Ⅱ、字符串的拼接

    print(a + b)  #整型与字符不能相加
    
    • 1

    (4)布尔 bool

    只有true false

    5.动态类型

    随程序运行过程中,类型发生改变

    a = 10
    print(type(a))
    
    a = 'hello'
    print(type(a))
    
    • 1
    • 2
    • 3
    • 4
    • 5

    一个编程语言是否是动态类型,只取决于运行时类型是否发生改变,不取决于类型是否声明

    二、注释

    1.单行注释:#
    2.多行注释:‘’’ ‘’’ 或者 “”" “”"

    """
    多行注释
    多行注释
    """
    
    • 1
    • 2
    • 3
    • 4

    3.批量注释
    ctrl + /

    三、输入输出

    1.格式化字符串

    a = 10
    # 打印a = 10
    print(f"a = {a}")  #在{}里面嵌入变量或者表达式,f表示format
    
    • 1
    • 2
    • 3

    2.input()

    返回值类型是字符串
    若只是单纯拿到用户的输入进行打印,按照str打印即可;若需要根据用户输入内容进行计算,需要将str转换成int

    a = input("请输入:")
    b = input("输入:")
    # 类型转换
    a = int(a)
    b = int(b)
    print(f'a + b = {a + b}')
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    整型转成字符串:str()
    字符串转成浮点数:float()

    四、运算符

    1.算术运算符

    • 加减乘除 取余 %% //
    • 运行时出现的错误也叫做”抛出异常“,程序直接停止,后面不会执行
      例如:除0错误
    a = 10
    print(10/0)  #ZeroDivisionError
    
    • 1
    • 2
    • 乘方运算,既支持乘方,也支持开方
     print(4 ** 2)
     print(4 ** 0.5)
    
    • 1
    • 2
    • 取整除法:向下取整
    print(7 // 2) # 3
    print(-7 // 2) # -4
    
    • 1
    • 2

    2.关系运算符

    • 比较两个操作数之间的大小关系:> < >= <= == != (注:大众可以用 = =或者!=来比较字符串大小)
    • 关系运算符对应的是表达式,值是布尔类型
    • 不仅针对数字比较,还可以比较字符串
    • 针对浮点数来说,用==比较相等,存在风险(浮点数在存储和表示的时候存在误差)
    print(0.1)
    print(0.2)
    print(0.1 + 0.2)  # 0.30000000000004
    print(0.3)    # 0.3
    
    # 正确的浮点数比较方式
    a = 0.1 + 0.2
    b = 0.3
    print(-0.000001 < (a - b) < 0.000001)   # true
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    3.逻辑运算符

    关系运算符pythonC++/Java
    逻辑与and&&
    逻辑或orll
    逻辑非not!
    • and or not(逻辑取反)
    a = 10
    b = 20
    c = 30
    print(a < b < c)
    print(a < b or b < c)
    print(a < b and c > b)
    print(not a < b)  # False
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    注意:短路求值
    对于and,左侧为False,即整体为假,不用再求右值;
    对于or,左侧为True,整体为True,不用再看右值

    4.赋值运算符

    • 链式赋值(不建议)
    a = b = 10
    
    • 1
    • 多元赋值(可解决两个变量的交换)
    a,b = 10,20
    a, b = b, a
    print(a, b)
    
    • 1
    • 2
    • 3

    5.复合赋值运算

    a = 1
    a += 1
    print(a)
    
    • 1
    • 2
    • 3

    注意:python不支持++ – 自增自减操作

    五、顺序、条件、循环语句

    1.顺序语句

    按照顺序执行的语句

    2.条件语句

    • if语句
    if expression:
    	do sth.
    next_something
    
    • 1
    • 2
    • 3
    • if - else语句
    if expression:
    	dosomething
    else:
    	dosomething2
    
    • 1
    • 2
    • 3
    • 4
    • if - elif - else语句
    if expression:
    	do_something1
    elif expression2:
    	do_something2
    else:
    	do_something
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 输入一个整数,判定是否为奇数
    a = input("请输入一个整数:")
    a = int(a)  #input的值为str,要进行类型转换,int()默认进行十进制转换
    if a % 2 == 0:
    	print("偶数")
    else:
    	print("奇数")
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    注意:若是负数,在Python中%2为1,在C++/Java中,为-1

    • 输入一个整数,判定是正数还是负数
    a = int(input("请输入一个整数:"))
    if a > 0:
    	print("正数")
    elif a < 0:
    	print("负数")
    else:
    	print("0")
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 判定一个年份是否是闰年,年份若能够被100整除,是世纪闰年,得看是否被400整除
    year = int(input("请输入一个年份:"))
    if year % 100 == 0:
    	# 世纪闰年的判定
    	if year % 400 == 0:
    		print("世纪闰年")
    	else:
    		print("平年")
    else:
    	# 普通闰年的判定
    	if year % 4 == 0:
    		print("闰年")
    	else:
    		print("平年")
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    3.空语句

    啥都不做但是需要有一条语句来占位,不然会报错

    if a != '1':
    	pass
    else:
    	print('hello')
    
    • 1
    • 2
    • 3
    • 4

    4.循环语句

    (1)while循环

    while 条件:
    	循环体
    
    • 1
    • 2
    • 打印1-10的整数
    num = 1
    while num <= 10
    	print(num)
    	num = numm +1
    
    • 1
    • 2
    • 3
    • 4
    • 计算1-100的和
    sum = 0
    num = 1
    while num <= 100:
    	sum += num
    	num += 1
    print(f'sum = {sum}')
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 计算5!
    result = 1
    num = 1
    while num <= 5:
    	result *= num
    	num += 1
    print(f'result = {result}')
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 1! + 2! + 3! + 4! + 5!
    num = 1
    # sum表示最后的和
    sum = 0
    while num <= 5:
    	# 先计算当前num!,再在sum上累加
    	result = 1
    	i = 1
    	while i <= num:
    		result *= i
    		i += 1
    	sum += result
    	num += 1
    	
    print(f'sum = {sum}')
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    (2)for循环

    for 循环变量 in 可迭代对象:
    	循环体
    
    • 1
    • 2

    可迭代对象:特殊的变量,内部包含其它很多的值

    • 打印1-10
    for i in rang(1,11):
    	print(i)
    
    • 1
    • 2

    注意:range(begin,end)→range[begin,end),还提供第三个参数,表示步长,默认为1

    # 打印2 4 6 8 10
    for i in range(2,12,2):
    	print(i)
    
    • 1
    • 2
    • 3
    • 打印10 9 8 7 6 5 4 3 2 1
    for i in range(10,0,-1):
    	print(i)
    
    • 1
    • 2
    • 1-100的和
    sum = 0
    for i in range(1,101):
    	sum += i
    print(f'sum = {sum}')
    
    • 1
    • 2
    • 3
    • 4

    注意:sum是内建函数,可shift + F6可以针对变量进行重命名,自动把所有需要修改的名字统一替换

    5.break、continue

    break:立即结束整个循环
    continue:立即结束当前这个循环,进入下一次循环

    • 给定若干个数字,求平均值
    theSum = 0
    # count表示数字个数
    while True:
    	num = input('请输入一个数字:')
    	if num == ';'
    		# 当用户输入‘;’的时候就表示结束
    		break;
    	num = float(num)
    	theSum += num
    	count += 1
    print(f'平均值为:{theSum / count}')
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
  • 相关阅读:
    「中间件」Redis分布式缓存关键知识
    1211、PXC集群、mysql存储引擎
    webpack--打包入口(entry)
    【LeetCode】118. 杨辉三角
    使用mindspore将pkl文件转为onnx时报错
    springcloud--riboon快速搭建
    七年码农路
    【测试】测试执行流程
    利用Flutter框架实现iOS应用的跨平台发布策略
    数据仓库相关
  • 原文地址:https://blog.csdn.net/weixin_41446512/article/details/128166960