Python编程基础

部署运行你感兴趣的模型镜像

一、基础语法

1、标识符(变量名)

第一个字符必须是字母表中字母或下划线 _

标识符的其他的部分由字母、数字和下划线组成。

标识符对大小写敏感。

在 Python 3 中,可以用中文作为变量名,非 ASCII 标识符也是允许的。

2、python中的保留字

有一个专门的keyword库来储存保留库

import keyword
print(keyword.kwlist)
['False', 'None', 'True', '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']

3、注释

单行注释: 以#号开头

多行注释:用多个 # 号,还有 ‘’’ 和 “”"


# 第一个注释
# 第二个注释

''' 
第三注释 
第四注释
'''  

""" 
第五注释 
第六注释 
"""

4. 行与缩进

Python 特色是使用缩进来表示代码块,无需大括号 {}。同一个代码块的语句必须包含相同的缩进空格数。

python

运行

if True:
    print("True")
else:
    print("False")

5. 多行语句

  • 通常一行写一条语句,若语句很长,可用反斜杠 \ 实现多行语句

    python

    运行

    total = item_one + \
            item_two + \
            item_three
    
  • 在 []{}, 或 () 中的多行语句,不需要使用反斜杠

    python

    运行

    total = ['item_one', 'item_two', 'item_three',
            'item_four', 'item_five']
    

6. 数字 (Number) 类型

包含四种类型:

  • int(整数):如 1,仅有一种整数类型 int,为长整型
  • bool(布尔):如 True
  • float(浮点数):如 1.23、3E-2
  • complex(复数):如 1 + 2j、1.1 + 2.2j

7. 字符串 (String)

  • 单引号 ' 和双引号 " 使用完全相同
  • 三引号 (''' 或 """) 可指定多行字符串
  • 转义符 \,使用 r 可让反斜杠不发生转义
  • 可按字面意义级联字符串,如 "this " "is " “string” 会自动转换为 this is string
  • 用 + 运算符连接,用 * 运算符重复
  • 有两种索引方式,从左往右以 0 开始,从右往左以 -1 开始
  • 字符串不能改变,一个字符就是长度为 1 的字符串
  • 截取语法:变量 [头下标:尾下标:步长]

python

运行

str = 'I love you '
print(str)  # 输出字符串
print(str[0:-1])  # 输出第一个到倒数第二个的所有字符
print(str[0])  # 输出字符串第一个字符
print(str[2:5])  # 输出从第三个开始到第六个的字符(不包含,左闭右开)
print(str[2:])  # 输出从第三个开始后的所有字符
print(str[1:5:2])  # 输出从第二个开始到第五个且每隔一个的字符(步长为2)
print(str * 2)  # 输出字符串两次
print(str + 'wcm')  # 连接字符串
print('hellonPython')  # 转义字符换行
print(r'hellonPython')  # 原始字符串,不转义

8. 空行

函数之间或类的方法之间用空行分隔,类和函数入口之间也用一行空行分隔,便于代码维护或重构,是空行也是程序代码的一部分。

9. 多个语句构成代码组

缩进相同的一组语句构成代码块(代码组)。像 if、while、def 和 class 这样的复合语句,首行以关键字开始,以冒号 : 结束,该行之后的一行或多行代码构成代码组。

plaintext

if expression : 
   suite
elif expression : 
   suite 
else : 
   suite

10. 同一行显示多条语句

语句之间使用分号 ; 分割:

python

运行

import sys; x = '我喜欢你'; sys.stdout.write(x + 'n')

11. 等待用户输入

执行程序按回车键后等待用户输入,输入内容为 string 类型:

python

运行

input("请输入信息")

12. print 输出

print 默认输出换行,若要实现不换行需在变量末尾加上 end=""

python

运行

x="我喜欢"
y="你"
# 换行输出
print( x )
print( y )
# 不换行输出
print( x, end = "" )
print( y, end = "" )
print()

13. import 与 from…import

用于导入相应模块:

  • 导入整个模块:import somemodule
  • 导入模块中某个函数:from somemodule import somefunction
  • 导入模块中多个函数:from somemodule import firstfunc, secondfunc, thirdfunc
  • 导入模块中全部函数:from somemodule import *
  • 为导入的模块定义别名:import somemodule as alise

二、基本数据类型

Python 中的变量不需要声明,使用前必须赋值,变量的 “类型” 是变量所指的内存中对象的类型。等号 = 用来赋值,左边是变量名,右边是存储在变量中的值。

1. 多个变量赋值

  • 多个变量赋相同值:a = b = c = 1
  • 多个变量赋不同值:a, b, c = 1, 2, "wcm"

2. 标准数据类型

  • 不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组)
  • 可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)
  • 还有高级数据类型,如字节数组类型 (bytes)

3. Number(数字)

支持 int、float、bool、complex(复数)。可用 type() 函数查询变量所指对象类型,isinstance 也可判断。

python

运行

a,b,c,d = 1 , 3.0 ,True , 520j
print (a,type(a))
print (b,type(b))
print (c,type(c))
print (d,type(d))

运算法则:

python

运行

print(5 + 4 ) # 加法
print(4.3 - 2) # 减法
print(3 * 7)  # 乘法
print( 2 / 4) # 除法,得到浮点数
print( 2 // 4) # 整除,向下取整,得到整数
print(17 % 3) # 取余
print(2 **5) # 乘方

4. String(字符串)

特性同上文 “基础语法” 中字符串部分。

5. bool(布尔类型)

  • 只有两个值:True 和 False
  • 可和其他数据类型比较,比较时 True 视为 1,False 视为 0
  • 可和逻辑运算符 and、or、not 一起使用
  • 可转换成其他数据类型,True 转 1,False 转 0

python

运行

a = True
b = False
print(2 < 3)  # True
print(2 == 3) # False
print (a and b ) # False
print (a or b )  # True
print ( not a )   # False
print(int(a))  # 1
print(float(b)) # 0.0
print(str(a))  # "True"

6. List(列表)

  • 写在方括号 [] 之间、用逗号分隔的元素列表
  • 元素类型可不同,支持嵌套
  • 可被索引和截取,截取后返回新列表,语法:变量[头下标:尾下标]
  • 加号 + 是连接运算符,星号 * 是重复操作
  • 元素可改变,有很多内置方法如 append ()、pop () 等

python

运行

list = [ 'abcd', 786 , 2.23, 'python3', 70.2 ]
tinylist = [123, 'python3']
print (list)            # 输出完整列表
print (list[0])         # 输出列表第一个元素
print (list[1:3])       # 从第二个开始输出到第三个元素
print (list[2:])        # 输出从第三个元素开始的所有元素
print (tinylist * 2)    # 输出两次列表
print (list + tinylist) # 连接列表

7. Tuple(元组)

  • 与列表类似,元素不能修改,写在小括号 () 里,元素间用逗号隔开
  • 元素类型可不同
  • 可被索引和截取,同列表
  • 可看作特殊的元组

python

运行

tuple = ( 'abcd', 786 , 2.23, 'python3', 70.2  )
tinytuple = (123, 'python3')
print (tuple)             # 输出完整元组
print (tuple[0])          # 输出元组的第一个元素
print (tuple[1:3])        # 输出从第二个元素开始到第三个元素
print (tuple[2:])         # 输出从第三个元素开始的所有元素
print (tinytuple * 2)     # 输出两次元组
print (tuple + tinytuple) # 连接元组

8. Set(集合)(无序)

  • 无序、可变数据类型,存储唯一元素
  • 用大括号 {} 表示,或 set() 函数创建,空集合必须用 set()
  • 支持交集、并集、差集等操作

python

运行

sites = {'wcm', 'i', 'love', 'you'}
print(sites)   # 输出集合,重复元素被自动去掉
if 'love' in sites :
    print('love 在集合中')
else :
    print('love 不在集合中')
a = set('wangmingkang')
b = set('wucongmei')
print(a - b)     # a 和 b 的差集
print(a | b)     # a 和 b 的并集
print(a & b)     # a 和 b 的交集
print(a ^ b)     # a 和 b 中不同时存在的元素

9. Dictionary(字典)

  • 无序的键 (key) : 值 (value) 集合,用 {} 标识
  • 元素通过键存取,键必须使用不可变类型且唯一

python

运行

dict = {}
dict['one'] = "wcm"
dict[2]     = "wmk"
tinydict = {'name': 'wcm','age':18, '颜值': ' best beautifil'}
print (dict['one'])       # 输出键为 'one' 的值
print (dict[2])           # 输出键为 2 的值
print (tinydict)          # 输出完整的字典
print (tinydict.keys())   # 输出所有键
print (tinydict.values()) # 输出所有值

10. bytes 类型

  • 不可变的二进制序列,元素是 0 到 255 之间的整数
  • 用于处理二进制数据,可用 b 前缀或 bytes () 函数创建

python

运行

x = b"hello"
y = bytes("hello", encoding="utf-8")

11. Python 数据类型转换

可使用内置函数进行数据类型转换,如 int(x,base)float(x)str(x)tuple(s)list(s) 等。

三、Python3 运算符

1. 算术运算符

包括 +(加)、-(减)、*(乘)、/(除)、%(取模)、**(幂)、//(取整除)等。

2. 比较(关系)运算符

有 ==(等于)、!=(不等于)、>(大于)、<(小于)、>=(大于等于)、<=(小于等于)。

3. 赋值运算符

包括 =、+=、-=、*=、/=、%=、**=、//= 以及 Python3.8 新增的 :=(海象运算符)。

4. 逻辑运算符

有 and(与)、or(或)、not(非)。

5. 成员运算符

in(在序列中找到值返回 True)、not in(在序列中没找到值返回 True)。

6. 身份运算符

is(判断两个标识符引用自一个对象)、is not(判断两个标识符引用自不同对象)。

7. 运算符优先级

从高到低有多种,如圆括号的表达式、乘方、正负号、乘除等,相同优先级运算符按一定规则分组。

四、条件判断

1、 if 语句

Python中if语句的一般形式如下所示:

a = int(input())
if a == 1314:
    print(1314)
    print("你是个好人")
elif a == 520:
    print(520)
else:
    print("单身狗")

Python 中用 elif 代替了 else if,所以if语句的关键字为:if – elif – else

注意:

  • 1、每个条件后面要使用冒号 :,表示接下来是满足条件后要执行的语句块。

  • 2、使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。

  • 3、在 Python 中没有 switch…case 语句,但在 Python3.10 版本添加了 match…case

2、 if 嵌套

在嵌套 if 语句中,可以把 if…elif…else 结构放在另外一个 if…elif…else 结构中。

if 表达式1:
    语句
    if 表达式2:
        语句
    elif 表达式3:
        语句
    else:
        语句
elif 表达式4:
    语句
else:
    语句

3、 match…case

Python 3.10 增加了 match…case 的条件判断,不需要再使用一连串的 if-else 来判断了。

match 后的对象会依次与 case 后的内容进行匹配,如果匹配成功,则执行匹配到的表达式,否则直接跳过,_ 可以匹配一切。

语法格式如下:

match subject:
    case <pattern_1>:
        <action_1>
    case <pattern_2>:
        <action_2>
    case <pattern_3>:
        <action_3>
    case _:
        <action_wildcard>

case _: 类似于 C 和 Java 中的 default:,当其他 case 都无法匹配时,匹配这条,保证永远会匹配成功。

五、循环语句

1、 while 循环

Python 中 while 语句的一般形式:

while 判断条件(condition):
    执行语句(statements)……

同样需要注意冒号和缩进。另外,在 Python 中没有 do…while 循环。

以下实例使用了 while 来计算 1 到 520 的总和:

i = 1
sum = 0
while i <= 520:
     sum+=i
     i+=1
print(sum) #135460

2、 while 循环使用 else 语句

如果 while 后面的条件语句为 false 时,则执行 else 的语句块。

语法格式如下:

while <expr>:
    <statement(s)>
else:
    <additional_statement(s)>

expr 条件语句为 true 则执行 statement(s) 语句块,如果为 false,则执行 additional_statement(s)。

循环输出数字,并判断大小:

count = 0
while count < 5:
   print (count, " 小于 5")
   count = count + 1
else:
   print (count, " 大于或等于 5")

3、 for 语句

Python for 循环可以遍历任何可迭代对象,如一个列表或者一个字符串。

for循环的一般格式如下:

for <variable> in <sequence>:
    <statements>
else:
    <statements>
实例如

list = ["wcm", "i", "love", "you", "1314"]
for li in list:
    print(li)

输出结果:

wcm
i
love
you
1314

您可能感兴趣的与本文相关的镜像

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值