写点什么

Python|语言元素、分支结构和循环结构

作者:AXYZdong
  • 2022 年 7 月 02 日
  • 本文字数:2220 字

    阅读完需:约 7 分钟

Python|语言元素、分支结构和循环结构

Author:AXYZdong

自动化专业 工科男

有一点思考,有一点想法,有一点理性!

定个小小目标,努力成为习惯!在最美的年华遇见更好的自己!

更多精彩文章前往:👉 个人主页


语言元素

指令和程序


计算机的硬件系统通常由五大部分构成:运算器、控制器、存储器、输入设备和输出设备。


运算器和控制器的结合:中央处理器。执行各种运算和控制指令以及处理计算机软件中的数据。


指令的结合:程序。


常用数据类型


  • 整形:python 中可以处理任意大小的整数(python 3 中只有 int 这一种)

  • 浮点型:浮点数也就是小数

  • 字符串型:以单引号或双引号括起来的任意文本。'hello' 和 "hello"

  • 布尔型:只有 True 和 False 两种


变量命名


  • 变量名由字母、数字和下划线构成,数字不能开头

  • 大小写敏感(大小写表示不同的变量)

  • 不要和关键词和系统保留字冲突


变量的使用


python 中可以使用 type 函数对变量的类别进行检查。


a=100
print(type(a)) # <class 'int'>
复制代码


可以使用 python 中内置的函数对变量类型进行转换。


  • int():将一个【数值或字符串】转换成【整数】

  • float():将一个【字符串】 转换成【浮点数】

  • str():将【指定的对象】转换成【字符串】

  • chr():将【整数】转换成【该编码对应的字符串(一个字符)】

  • ord():将【字符串(一个字符)】转换成【对应的编码(整数)】


chr()ord() 互为逆操作。


a=1b=2print('%d + %d = %d' % (a,b,a+b))  #1 + 2 = 3
复制代码


%d 为整数占位符,%f 为小数占位符,字符串之后的 % 后面跟着的变量值会替换掉占位符然后输出到终端。


运算符


  • 算数运算符:** % // / * - +

  • 赋值运算符:= += -= *= /= //=

  • 比较运算符:> < >= <= == !=

  • 逻辑运算符:and or not

  • 位运算符:& | ~ ^ >> <<


运算符优先级 :单目运算符(~ + -)> 算术运算符 > 位运算符 > 比较运算符。有小括号的,小括号优先。



分支结构

一条语句一条语句顺序执行:顺序结构


分支结构 (选择结构)


python 中构造分支结构的关键字:ifelseelif


'''判断输入的边长能否构成三角形,如果能则计算三角形的周长和面积Author:AXYZdong '''a = float(input('a = '))b = float(input('b = '))c = float(input('c = '))if a+b > c and a +c > b and b+c >a :    print('周长 = %f' % (a+b+c))    p = (a+b+c)/2    area = (p*(p-a)*(p-b)*(p-c))**0.5    print('面积 = %f' % (area))else:    print('不能构成三角形')
复制代码

循环结构

for-in 循环


明确知道 循环执行的次数 或者 要对一个容器进行迭代 ,推荐使用 for-in 循环。


例:计算 1~100 求和的结果



'''1~100求和Author:AXYZdong '''sum = 0for x in range(101):  # for x in range(1,101):    sum = sum + xprint(sum)
复制代码


  • range(101):产生 0~100 范围内的整数,取不到 101。

  • range(1,101):产生 1~100 范围内的整数,相当于 [1,101)

  • range(1,101,2):产生 1~100 范围内的奇数,其中 2 是步长,每次递增

  • range(100,0,-2):产生 100~1 范围内的偶数,其中-2 是步长,每次递减


1~100 范围内偶数求和?


'''用for循环实现1~100范围内偶数求和Author:AXYZdong '''sum = 0for x in range(2,101,2):  # for x in range(100,0,-2):    sum = sum + xprint(sum)
复制代码


range(2,101,2):从 2 开始以每次 2 的步长递增,产生 2~100 的范围(均为偶数)


while 循环


不知道具体循环次数的循环结构 ,推荐使用 while 循环。while 循环通过一个能够产生或转换出 bool 值的表达式来控制循环,表达式的值为 True 则继续循环;表达式为 False 则结束循环。


'''猜数字游戏Author:AXYZdong '''import random
ans = random.randint (1,10)counter = 0while True: counter += 1 num = int(input('请输入:')) if num > ans: print('大一点') elif num < ans: print('小一点') else: print('恭喜你猜对了') breakprint('你一共猜了%d次'% (counter))if counter > 5: print('你运气太差了')
复制代码


random.randint(参数1,参数2)

  • 参数 1、参数 2 必须是整数

  • 函数返回值为参数 1 和参数 2 之间的任意数,闭区间 [参数 1,参数 2](python 3 环境中已验证)


例:输入两个正整数,计算它们的最大公约数和最小公倍数


最大公因数:两个数公共因子中最大的那个数

最小公倍数:两个自然数的积除以它们的最大公因数


'''输入两个正整数,求它们的最大公约数和最小公倍数Author:AXYZdong'''x = int(input('x = '))y = int(input('y = '))if x > y:    x,y = y,xfor common in range(x,0,-1):    if x%common == 0 and y%common == 0:        print('%d和%d最大公约数是%d' % (x,y,common))        print('%d和%d最小公倍数是%d' % (x,y,(x*y//common)) ) #两个自然数的积等于这两个数最大公因数乘以它们的最小公倍数        break
复制代码


参考文献


[1]:https://github.com/jackfrued/Python-100-Days

[2]:Python 编程快速上手:让繁琐工作自动化/ (美)斯维加特(A1 Sweigart) 著;王海鹏译.北京:人民邮电出版社,2016.7

[3]:Python 中文指南;作者:王炳明,版本:v1.0


本次的分享就到这里


如果我的文章对你有帮助、如果你喜欢我的文章内容,请 “点赞” “评论” “收藏” 一键三连哦!

听说 👉 点赞 👈 的人运气不会太差,每一天都会元气满满呦!^ _ ^

码字不易,大家的支持就是我坚持下去的动力。点赞后不要忘了👉 关注 👈我哦!

如果以上内容有任何错误或者不准确的地方,欢迎在下面👇留个言。或者你有更好的想法,欢迎一起交流学习~~~


发布于: 刚刚阅读数: 5
用户头像

AXYZdong

关注

没有伞的孩子要学会奔跑! 2020.06.01 加入

自动化专业 工科男 有一点思考,有一点想法,有一点理性。 定个小小目标,努力成为习惯。

评论

发布
暂无评论
Python|语言元素、分支结构和循环结构_7月月更_AXYZdong_InfoQ写作社区