「Python」语言元素、分支结构和循环结构
Author:AXYZdong 自动化专业 工科男 有一点思考,有一点想法,有一点理性!
定个小小目标,努力成为习惯!在最美的年华遇见更好的自己!
CSDN@AXYZdong,CSDN首发,AXYZdong原创 唯一博客更新的地址为:AXYZdong的博客 B站主页为: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=1
b=2
print('%d + %d = %d' % (a,b,a+b)) #1 + 2 = 3
%d
为整数占位符,%f
为小数占位符,字符串之后的 %
后面跟着的变量值会替换掉占位符然后输出到终端。
运算符
- 算数运算符:
**
%
//
/
*
-
+
- 赋值运算符:
=
+=
-=
*=
/=
//=
- 比较运算符:
>
<
>=
<=
==
!=
- 逻辑运算符:
and
or
not
- 位运算符:
&
|
~
^
>>
<<
运算符优先级 :单目运算符(~
+
-
)> 算术运算符 > 位运算符 > 比较运算符。有小括号的,小括号优先。
运算符 | 描述 |
---|---|
[] [:] | 下标、切片 |
** | 指数 |
~ + - | 按位取反、正好、负号 |
* / % // | 乘、除法(结果为浮点类型)、取余数、整除/商数取整 |
+ - | 加、减 |
>> << | 右移、左移 |
& | 按位与 |
^ | | 按位异或、按位或 |
<= < > >= | 小于等于、小于、大于、大于等于 |
== != | 等于、不等于 |
is is not | 身份运算符 |
in not in | 成员运算符 |
not or and | 逻辑运算符 |
分支结构
一条语句一条语句顺序执行:顺序结构
分支结构 (选择结构)
python中构造分支结构的关键字:if
、else
、elif
'''
判断输入的边长能否构成三角形,如果能则计算三角形的周长和面积
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 = 0
for x in range(101): # for x in range(1,101):
sum = sum + x
print(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 = 0
for x in range(2,101,2): # for x in range(100,0,-2):
sum = sum + x
print(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 = 0
while True:
counter += 1
num = int(input('请输入:'))
if num > ans:
print('大一点')
elif num < ans:
print('小一点')
else:
print('恭喜你猜对了')
break
print('你一共猜了%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,x
for 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
相关文章
- Python中的函数与方法 以及Bound Method和Unbound Method
- 一文贯通python文件读取
- Python 中的异步编程:Asyncio
- 7个你现在就该学习Python的理由
- 提高Python运行效率的六个窍门
- Python数据科学:神经网络
- 一篇文章看懂大数据分析就业前景及职能定位
- R和Python中的文本挖掘:8个入门小贴士
- 告诉你为什么Python有点慢,但我却无所谓?
- 专注学习DevOps编程语言Top 5推荐
- Python发送邮件脚本
- Python多进程并行编程实践: mpi4py 的使用
- Python语言在未来的发展前景
- Python vs Ruby: 谁是最好的 web 开发语言?
- Python对Ruby:谁在Web开发领域更胜一筹?
- Python一行代码完成并行任务
- Python开发者2017应该关注的七个类库
- python爬虫入门基本知识
- 在终端中优雅地编写Python
- Python机器学习实战:信用卡欺诈检测