分享

Python基础语法——代码规范&判断语句&循环语句

 Python进阶者 2023-02-10 发布于广东

落落疏帘邀月影,嘈嘈虚枕纳溪声

Python基础语法

代码的执行顺序

  • 从上到下

  • 从左到右

代码规范

  • 模块名,包名,普通数据量一般小写字母,多个单词之间用 _ 连接

  • 不要用系统定义的名称,具有特殊意义的表示符,如:doc,txt之类的

  • 每行代码不易过长

  • 单个字母使用为名字的时候 i(大小写)、L(大小写)、O(大小写)最好别用,容易混淆,与数字1分不清楚...

  • 不能使用Python中内置的变量,具体自行查看

    import keywordprint(keyword.kwlist)
  • 还有许多....

    上面这些都不是大问题,程序仍可正常运行,再说一般的编辑器都有格式化,如: pyCharm:ctrl+alt+L , vs code: alt+shift+F,习惯的格式化一下就行了.

    格式化前,看着无比的糟心,虽然不影响程序的正常运行:

    但是容易遭人锤

格式化后,可观赏行非常高,简直赏心悦目:

    Python没有像其他语言一样用{}包裹着代码块,Python是严格按照缩进来区分代码块的,所以推荐tab 与 空格 尽量不要混用,代码多了空格多一个少一个眼睛看瞎了也找不出...

    像这种的出现了else,与if不同级,没有匹配到if,编辑器就给出了红色波浪线,如果不是这种成对出现的编辑器是不会报错的,没有红色框是很难看出来哪里多,少了一个宫格...关键是这种错误无法格式化到正常赏心悦目的代码。

程序中常用的运算符

# + - * /  加减乘除# ** 平方     print(2**3)     8# %     取余数     print(9%2)     1# //    取商       print(9//2)    4# in 判断在某个东西里包含# not in 判断不在某个东西里包含
# 逻辑运算符# not 取反# and 同时True为True# or 一个为True为True# 三者的优先级关系:not>and>or,同一优先级默认从左往右计算,将要提升的运算用()小括号包括,与数学中一样
# 比较运算符# == 等于# != 不等于# <> 不等于# ># >=# <# <=
# 身份运算符# is 比较id id(变量名) 查看id# == 比较值

Python中的人机交互

# input(提示用语),输入完按回车即可name = input('请输入您的名字:')print('您好'+str(name)+'!')

判断语句

单if语句:
# 这里不考虑输入的不是数字的情况num = input('请输入一个数字:')# 输入的虽然是数字,但是是个字符串类型的数字print(type(num))# 将输入的字符串转换为数字num = int(num)if num % 2 == 0:    print('您输入的数字', num, '是个偶数')print('程序结束')

执行顺序如下:

if...else...语句:
# 格式if 条件1:(满足条件执行下方语句块结束)        语句块else:(不满足上面条件执行else后语句块结束)        语句块
# 这里不考虑输入的不是数字的情况age = int(input('请输入您的年龄:'))if age > 0:    print('您输入的年龄为', age)else:    print('请不要开玩笑')print('程序结束')
if...elif...else:
格式:  if 条件1:    语句块  elif 条件2:    语句块  ...  elif 条件n:    语句块  else:    语句块满足任意条件执行那个条件后的语句块后结束,如都不满足执行else后的语句块结束
# 这里不考虑输入的不是数字的情况score = int(input('请输入您的分数(0-100之间):'))# 如不满足第一个条件必然是小于等于100分的if score > 100:    print('小孩子撒谎可不好啊!!!')# 所以这个判断的就是是否在90-100之间,包含90和100,下方同理elif score >= 90:    print('表现不错,带你去旅游')elif score >= 80:    print('还可以,去吃顿好的庆祝一下')elif score >= 70:    print('表现一般,下次继续努力')elif score >= 60:    print('这分数有些危险')elif 0 <= score < 60:    print('考试不及格,准备好挨打')else:    print('你怎么考出来的负数?')

判断语句里面可以重复嵌套判断语句

三元表达式(语法糖):

格式:为真的值 if 条件 else 为假的值注意 ifelse 后无:(冒号)
age = int(input('请输入您的年龄:'))res = '可以当小朋友的叔叔了' if age>=30 else '还小呢,最多是个哥哥'print(res)
# 三元表达式也可以嵌套,不过不推荐嵌套太多,容易晕呐!!!age = int(input('请输入您的年龄:'))res = '老爷爷' if age>=60 else '叔叔' if age>=30 else '小弟弟' if age <=20 else '大哥哥'print(res)

循环

range(初始值,最终值[不包含],步长)
for i in range(10):    print(i)for i in range(10,30):    print(i)for i in range(10,30,2):    print(i)# 小知识,print()后面默认跟了\n(换行),可以更改for i in range(10):    print(i,end=' ')for i in range(10):    print(i,end='\t')
简单for循环
# 至于字符串之类的为啥能循环,因为字符串,列表之类的是可迭代对象,后面在介绍str1 = 'hello world'for i in str1:    print(i,end='')    str1 = 'hello world'for i in str1:    if i == ' ':        i = ','    print(i,end='')
简单while循环
count = 0res = 0while count < 11:    res+=count    # 注意一定有一个变化的量用来退出循环,不然就是死循环,就是一直循环    count+=1# else可以省略,可要可不要else:    print('此时条件不满足退出循环执行我')print('程序继续向下执行')print('1-10的累加和为:',res)
死循环
# 死循环很简单,就是while条件一直满足就行了while 1:    print('我一直执行')print('上面循环不结束我一直无法执行')# 强制关闭ctrl+C,或者点击结束程序
中断循环
  • pass : 无任何意义,什么也不执行

  • continue : 执行下次循环

  • break : 退出循环

for i in range(10):    if i > 3:        pass # 虽然无意义,但是不写会报错    else:        print('这里都是小于等于3的数字:', end='')    print(i)
for i in range(10):   if i == 2:        continue # 满足条件跳过本次循环    print(i)
 for i in range(10):    if i == 2:        break # 满足条件终止循环    print(i)
count = 0while count < 11:    if count < 5:        print('小于5的数字:',count)        count+=1    else:        breakelse:    print('非正常结束循环我不执行 ')

    接下来写一个猜骰子数字的小游戏,嗯...猜不对不让离开的那种.顺便好好捋一下程序的执行顺序(划重点)以及continue和break的作用与用法。

# 导入模块import randomwhile 1:    # 生成1-6的随机数    random_num = random.randint(16)    print(random_num)    while 1:        # 等待用户输入,输入的内容去掉特殊符号        num = input('请输入1-6的数字:').strip()        # 判断输入的不是一位的字符串类型的数字        if len(num) >= 2 or not num.isdigit():            # 温馨提示一下            print('提示:请输入1-6的数字')            # 本次循环跳过,从头(等待用户输入数字那里)开始执行            continue        # 判断输入的数字是否在1-6之间        if int(num) > 6 or num == '0':            print('提示:请输入1-6的数字')            # 如果不在跳过后面代码继续从头(等待用户输入数字那里)开始            continue        print(num)        # 判断输入的与随机出来的是否一致        if random_num != int(num):            print(num+'这个数字不对呢')            # 不一致从头(等待用户输入数字那里)开始            continue        # 上面所有条件不满足说明答案是对的,正常执行        print(str.format('恭喜你,{}是正确的呢', num))        # 退出这一层循环        break    # 询问是否继续    decide = input('不玩了输入N退出:')    # 不是输入n或者N进入if语句    if decide.upper() != 'N':        # 不是退出从随机数哪里开始重新执行        continue    # 输入n满足上面条件退出最外层循环    break    # 程序结束

------------------ End -------------------

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多