python学习笔记4---分支、循环、条件与枚举

表达式

表达式(Expression)是 运算符(operator)和 操作数(operand)所构成的 序列

>>> 1 + 1
2
>>> a = [1,2,3]
>>> 1 + 1 + 1 + 1
4
>>> 1 + 2 * 3
7
>>> 1 * 2 + 3
5
>>> a = 1 + 2 * 3
>>> a = 1
>>> b = 2
>>> c = a and b or c
>>> c = int('1') + 2

运算符优先级

python学习笔记4---分支、循环、条件与枚举_第1张图片

同级的运算符的优先级还是有区别的 比如逻辑运算符里的 and的优先级大于or
>>> a = 1
>>> b = 2
>>> c = 3
>>> a + b * c
7
>>> 1 or 2
1
>>> 1 and 3
3
>>> a or b and c
1
>>> a or (b and c)
1
>>> a or 3
1
>>> (a or b) and c
3
>>> (a or b) and (c + 1)   //两个括号同级,左结合
4
>>> a = 1
>>> b = 2
>>> c = a + b    //出现赋值符号时,右结合
>>> print(c)    
3
>>> c = a or b
>>> print(c)
1
>>> a = 1
>>> b = 2
>>> c = 2
>>> not a or b + 2 == c
False
>>> ((not a) or ((b + 2) == c))    //优先级:not > and > or
False

在文本文件中编写Python代码

python学习笔记4---分支、循环、条件与枚举_第2张图片
python脚本是后缀名为.py的文件,通过命令行“python filename.py”执行

clipboard.png

推荐的IDE:PyCharm、vsCode,大型工程适合用PyCharm,学习适合用vsCode,vsCode中推荐的插件:python、Terminal、Vim、vscode-icons

注释

单行注释用#
多行注释用```

流程控制语句

主要有 条件控制(if else)循环控制(for while)分支

条件控制(if else)

# encoding: utf-8

mood = False

if mood :
    print('go to left')
    # print('back away')
# print('back away')
else :
    print('go to right')
    
a = 1
b = 2
c = 2
# if后面不仅可以是布尔值,还可以是表达式
if a or b + 1 == c :
    print('go to left')
    # print('back away')
# print('back away')
else :
    print('go to right')
# encoding: utf-8
"""
    一段小程序
"""
# constant 常量  建议全大写
ACCOUNT = 'hughie'
PASSWORD = '123456'
# python变量建议都用小写,用下划线分隔单词,不用驼峰命名
print('please input account')
user_account = input()

print('please input password')
user_password = input()

if ACCOUNT == user_account and PASSWORD == user_password:
    print('success')
else:
    print('fail')
# encoding: utf-8
# snippet 片段

if condition:
    pass
else:
    pass


a = True
if a:
    # pass 空语句/占位语句
    pass
else:
    print('')


if True:
    pass
if False:
    pass

# 嵌套分支
if condition:
    if condition:
        pass
    else:
        pass
else:
    if condition:
        pass
    else:
        pass

# 代码块
if condition:
    code1
        code11
        code22
            code333
            code444
                code5555
                code6666
    code2
    code3
else:
    code1
    code2
    code3

改写为elif
# encoding: utf-8
"""
a = x

a = 1 print('apple')
a = 2 print('orange')
a = 3 print('banana')

print('shopping')
"""

a = input()
print('a is' + a)
if a == 1:
    print('apple')
else:
    if a == 2:
        print('orange')
    else:
        if a == 3:
            print('banana')
        else:
            print('shopping')


# 改写为elif
a = input()
print(type(a))
print('a is ' + a)
a = int(a)
if a == 1:
    print('apple')
elif a == 2:
    print('orange')
elif a == 3:
    print('banana')
else:
    print('shopping')

循环(while for)

# encoding: utf-8
# 循环

# 循环语句

# while     for
# CONDITION = True
# while CONDITION:
#     print('I am while')

counter = 1
# 递归常用while
while counter <= 10:
    counter += 1
    print(counter)
else:
    print('EOF')
# encoding: utf-8

# 主要是用来遍历/循环 序列或者集合、字典
# a = ['apple', 'orange', 'banana', 'grape']
# for x in a:
#     print(x)

# a = [['apple', 'orange', 'banana', 'grape'], (1, 2, 3)]
# for x in a:
#     for y in x:
#         # print(y, end='')
#         print(y)
# else:
#     print('fruit is gone')


# a = [1, 2, 3]

# for x in a:
#     if x == 2:
#         # break 遇到x==2的时候终止,打印出1
#         # break
#         # continue 遇到x==2的时候跳过,打印出1,3
#         continue
#     print(x)
# else:
#     print('EOF')


a = [['apple', 'orange', 'banana', 'grape'], (1, 2, 3)]
for x in a:
    # if 'banana' in x:
    #     break
    for y in x:
        if y == 'orange':
            # 内部循环跳出后,外部循环还在执行
            break
        print(y)
else:
    print('fruit is gone')
# encoding: utf-8
# for (i=0; i<10; i++){}

# 以上的for循环用python实现
# for x in range(0, 10):
#     # range(0,10) 表示从0开始的10个数字,并不包含10
#     print(x)


# for x in range(0, 10, 2):
#     # range(0,10,2) 2表示步长
#     print(x, end=' | ')
#     # 打印结果:0 | 2 | 4 | 6 | 8 |


for x in range(10, 0, -2):
    print(x, end=' | ')
    # 打印结果:10 | 8 | 6 | 4 | 2 |
# encoding: utf-8

a = [1, 2, 3, 4, 5, 6, 7, 8]

# for i in range(0, len(a), 2):
#     print(a[i], end=' | ')
    # 1 | 3 | 5 | 7 | 

b = a[0:len(a):2]
print(b)
    # [1, 3, 5, 7]

你可能感兴趣的:(python,开发工具)