Python语言学习
最近刚好打算玩openmv 模块用的Python语言 就最近用了一天多,两天这样 吧的时间学习了Python语言基础的内容。学到函数那里就不学了,所有函数没学,估计是够用了,不够再补吧。看的是B站的小甲鱼,也做了一些笔记。
整理一下笔记。
基本语法
输出 print()
输出 hello word 用法
print('hello world')
print("hello world")
print('hello' + ' world')
print('hello world\n' * 1) #\m 表示回车意思(将光标移动到下一行)
输入 input()
输入用法
string = input() #输入字符给string
print(string) #输出string内容
#可以做一个提示 我们提示 Please input hello world:
string = input('Please input hello world:')
print(string)
类型转换
转为整型数:int()
string = '520 #定义一个字符串为8(不是数字520哦,是字符520)
value = int(string) #把字符520转为整型给value
print(value) #输出整型
输出结果:520
转为浮点型数:float()
string = '520' #定义一个字符串为8(不是数字520哦,是字符520)
value = float(string) #把字符8转为浮点型给value
print(value) #输出浮点型
输出结果:520.0
转为字符型数:str()
number = 520 #定义一个整数为520(是数字520哦,不是字符520)
string = str(number) #把数字520转为字符型给string
print(string) #输出字符型
输出结果:520 #这个是字符型
帮助函数:help()
#比如你不会用int() 这个函数 可以通过help来获取帮助
注意int函数不用加括号。
print(help(input))
查看函数: dir()
print(dir(__builtins__))
变量的知识(跟C语言一样)
跟 C语言 一样 会的就不用看了。
变量变量 这个就是肯定是可以变的哈。
1、使用变量之前必须赋值。
2、可包括字母、下划线、数字、但不能与数字开头。
3、字母可以大小写 (大写和小写是不同的变量)。
4、等号 ‘=’ 表示赋值的意思(变量 = 值) 不是相等 相等是 ‘==’。
查看变量的类型: type()
isinstance(变量,类型)
返回值 如果变量 和 你指定的类型一致 ,则返回True 否则返回 False
比较符号:(跟C语言一样)
> 左边比右边大
< 左边比左边小
>= 左边大于或等于 右边
<= 左边小于或等于 左边
== 左边等于右边
!= 左边不等于右边
value = 5 > 3
print(value)
输出结果: True
value = 5 >= 8
print(value)
输出结果: False
条件分支(if else)
格式: 注意缩进 和 if 和 else 最后有个冒号(相当于C的括号)
if:
#条件为真 True 执行的事
else:
#条件为假 False 执行的事
if 1 > 5:
#判断 1 > 5 吗?大于就 走我这里
elif 1 > 2:
#判断 1 > 2 吗? 大于就 走我这里
else
#都不是 走这里
三元操作符
x,y = 4,5
if x < y
small = x
else
small = y
可以表达成:
small = x if x < y else y
断言 assert() (检测有没有错误用的)
如果错误 会在程序崩溃前提示 AssertionError
for循环
语法:
for 目标 in 表达式:
循环体
string = 'hello world'
for i in string: #循环字符长度次数
print(i , end=' ') #每次打印一个字符
#end = ' ' 表示在每打印一个字符结束后加一个空格
输出结果:h e l l o w o r l d
定义一个列表:
string = ['hello','hi','小明','小王']
for i in string:
print(i,len(i),len(string), end=' ')
''' 每次打印 第 i 个元组数据。
打印 第i 个元组数据的字符数。 注意:是字符数 不是长度 hello 是5个 小明是2个
打印一共有多少个元组。。'''
输出结果:
hello 5 4 hi 2 4 小明 2 4 小王 2 4
break 和 continue
break: 表示结束循环
continue:表示退出当前这次循环
例子:
while 1:
number = input('输入A-Z字母,看看你有没猜对:') #用户输入字母
if number != 'G': #判断 是否 不等于 字符 G
print('猜错了哦 继续猜猜')
continue #退出当前这次循环 不继续往下走了 重新从 while 1 那里开始 了
elif number == 'G': # 如果猜对了
print('猜对了哈 厉害')
break #结束 并且退出循环 打印 游戏结束 没有奖励
else: #都不是 则 提示 重新输入
print('请输入正确的字符')
print('游戏结束 没有奖励')
for i in range(10): # 从0开始 到 9结束
if i != 5: #如果不等于 5 打印i的值 并且 退出当前这次循环 不继续往下走了
print(i)
continue
elif i == 5: #如果等于
i = i + 10 #i 加个 10 并且打印 i的值
print(i)
break
else:
print('出错')
输出结果:
0
1
2
3
4
15
range()
语法:range([start,] stop[,step=1])
step = 1 表示默认值为 1
作用:生成从start 开始 到 stop 结束的一个参数。
for i in range(1,3):
print(i)
输出结果:
1
2
for i in range(1,6,2): #第三个参数的意思是 每一次你想递增多少 默认不写是1 我这里是递增2
print(i)
输出结果:
1
3
5
while用法
while True:
#一直循环里面的内容
while False
#不会进入该循环
小练习:
结合以上知识 做个猜数字游戏:
输入数字——判断数字是否等于6——正确打印恭喜你猜对了——大了打印大了,小了打印小了。
方式1:
print('猜数字游戏,猜对了有奖')
string = input('你输入0-9的数字,看看你有没有猜对: ')
value = int(string) #input的数是字符来,我们需要int()转成整型
if value == 6:
print('恭喜你猜对了')
elif value > 6:
print('大了,大了')
else:
print('小了,小了')
方式2:
print('猜数字游戏,猜对了有奖')
string = input('你输入0-9的数字,看看你有没有猜对: ')
value = int(string)
if value == 6:
print('恭喜你猜对了')
else:
if value > 6:
print('大了,大了')
else:
print('小了,小了')
方式1和方式2 效果是一样的
#------------------while 用法:---------------------#
print('猜数字游戏,猜对了有奖')
string = input('你输入0-9的数字,看看你有没有猜对: ')
value = int(string)
if value == 6:
print('恭喜你猜对了')
else:
if value > 6:
print('大了,大了')
else:
print('小了,小了')
while value != 6:
string = input('猜错啦 再来一次吧 ')
value = int(string)
if value == 6:
print('恭喜你猜对了')
else:
if value > 6:
print('大了,大了')
else:
print('小了,小了')
print('游戏结果啦')
给成绩一个等级小练习
score = input("请输入你的成绩:")
score = float(score)
if score >= 90.0:
print('牛逼 A级')
elif score >= 80.0 and score <= 89.5:
print('还行 B级')
elif score >= 70.0 and score <= 79.5:
print('一般 C级')
elif score >= 60.0 and score <= 69.5:
print('合格 D级')
else:
print('很差 E级')
逻辑符号
and() (相当于 C语言的 && 并且的意思)
只有两个都对 才是 True 否则是 False
or() (相当于 C语言的 || 或者的意思)
只要有1个对 就是 True 两个都错才是 False
not() (相当于 C语言的 ~ 取反的意思)
not(True) #取反的意思 返回的是False
优先级:
优先级 | 类型 | 例如 |
---|---|---|
最高 | 幂运算 | ** |
↓ | 正负号 | +x 、-x |
↓ | 算术操作符 | *、/、//、+、- |
↓ | 比较操作符 | <、<=、>、>=、==、!= |
↓ | 逻辑运算符 | not、and、or |