避免自己忘了写的代码是做什么的——写给人看的,机器不运行
不要去注释你代码做了什么,而要去注释我的代码为什么要这么做。
用于记录思路、实现方法、代码功能
注释很重要,大厂很重视,尤其日企
报错的一篇代码,从下到上一句一句加#,依次运行,如果某行代码加了#后,程序运行成功,那么就是这行有问题,但这个方法不好。
==句子前加#
快捷键:Ctrl+/==
代码:
print("你好呀,我叫赛利亚!")
#单行注释
print("你才好呢,我不是赛利亚!")
结果:
你好呀,我叫赛利亚!
你才好呢,我不是赛利亚!
代码:
'''
多行注释
写诗...
'''
print("苹果")
结果:
苹果
可以发生改变的一个量,是用来区分不同数据的,可以指向一个内存空间,帮我们存储数据
通俗来说,变量是给数据表起的名
代码:
a=188
print(a)
a=166
print(a)
结果:
188
166
(1)必须是数字或字母或下划线,以及相互组合
a = 10
a1 = 10
a_1 = 11
_ = 11
(2)不能是数字开头,也不能是纯数字
反例:
1 = 188
1+1 = ?
(3)不要用中文,因为不方便用于国际分享和使用,原则上用也没关系
(4)不能用Python的关键字,如:if、for、while、async、break等,关键字会在颜色上有区别
(5)不要太长
(6)要有意义,如qwer=“123”,不行
(7)推荐使用下划线命名或驼峰命名
下划线命名:
name_of_teacher="樵夫"
驼峰命名:每个单词的首字母大写
NameOfTeacher="樵夫"
综上,变量名要让人看懂,看得舒服
注意:没加双引号是输出变量,加了双引号是输出字符
代码:
name="阿拉斯加"
print(name)
print("name")
结果:
阿拉斯加
name
常见写法:
2.把所有的变量的字母变成大写就可以认为是常量
Python里不存在绝对意义上的常量
代码:
PI=3.1415926
print(PI)
PI=3
print(PI)
结果:
3.1415926
3
数据类型是用来区分不同数据的,不同数据类型应该有不同的操作
数字:±*/
文字:展示
布尔:条件判断
分成整数int和小数float
只有数字型的数据才能±*/
a=10
用单引号、双引号、三个单引号或三个双引号引起来
三个双引号或单引号可以命名多行的字符串
s = '周润发'
print(s)
print("你好啊,我叫赛利亚")
a = """我家大门常打开,
欢迎你们到来。
赶紧来,
我家着火了!"""
print(a)
结果:
周润发
你好啊,我叫赛利亚
我家大门常打开,
欢迎你们到来。
赶紧来,
我家着火了!
代码:
name = "樵夫"
tedian = "帅爆了"
print(name + tedian)
结果:
樵夫帅爆了
坑:字符串与数字型相加会报错
代码:
tedian = "帅爆了"
print(1 + tedian)
结果:
Traceback (most recent call last):
File "D:\...", line 17, in <module>
print(1 + tedian)
~~^~~~~~~~
TypeError: unsupported operand type(s) for +: 'int' and 'str'
代码:
print("周润发"*5)
结果:
周润发周润发周润发周润发周润发
布尔值主要有两个:
True:真,真命题
False:假,假命题
代码:
print(100>30)
print(20>500)
结果:
True
False
可以直接赋值
格式:变量=input(提示语)
a = input("请输入第一个数字:")
b = input("请输入第二个数字:")
print(a+b)
第一次运行之后,会hang在“请输入第一个数字:”
输入数字之后,会进行下一步
请输入第一个数字:
请输入第一个数字:10
请输入第二个数字:
请输入第一个数字:10
请输入第二个数字:20
1020
坑:input得到的结果一定是字符串,字符串相加就是相连
代码:
a = input("请输入第一个数字:")
print(type(a)) # 用type来查看一个变量的数据类型
b = input("请输入第二个数字:")
print(a+b)
结果:
请输入第一个数字:10
<class 'str'>
请输入第二个数字:20
1020
py基础数据类型:想把xxx转化成谁,就用谁套起来,如:
str转化为int:int(str)
代码:
a = input("请输入第一个数字:")
b = input("请输入第二个数字:")
a = int(a)
b = int(b)
print(a+b)
结果:
请输入第一个数字:10
请输入第二个数字:20
30
int可以直接套住input
代码:
a = int(input("请输入第一个数字:"))
b = int(input("请输入第二个数字:"))
print(a+b)
结果:
请输入第一个数字:10
请输入第二个数字:20
30
If 条件:
代码
如果条件成立就执行代码,如果不成立就不执行
py里面没有大括号来控制代码范围,只能用缩进的方式来表示代码的层次关系
代码:
if money > 300:
print(123)
print(456)
print(789)
条件成立,执行123和456,然后才是789,不成立直接执行789
123和456从属于if
money = 500
结果:
123
456
789
money = 200
结果:
789
代码:
money=500
if money>300:
print("铁锅炖")
print("回家")
结果:
铁锅炖
回家
代码:
money=100
if money>300:
print("铁锅炖")
print("回家")
结果:
回家
If 条件:
代码1
Else:
代码2
代码:
money=input("请输入你兜里的钱:")
money=int(money)
if money>500:
print("足疗")
else:
print("回家五姑娘")
money是字符串,需要改成数字型
结果:
请输入你兜里的钱:1000
足疗
请输入你兜里的钱:100
回家五姑娘
If 条件:
if….:
ss
else:
xx
Else:
代码2
代码:
money=int(input("请输入你兜里的钱:"))
if money>1000:
if money>5000:
print("充个会员卡")
else:
print("洗个脚就走")
else:
print("回家五姑娘")
结果:
请输入你兜里的钱:10000
充个会员卡
请输入你兜里的钱:3000
洗个脚就走
请输入你兜里的钱:100
回家五姑娘
第四种(常用):
if 条件:
代码1
elif 条件2:
代码2
elif 条件3:
代码3
…
else:
代码:
money=int(input("请输入你兜里的钱:"))
if money>5000:
print("充卡")
elif money>1000:
print("洗个脚回家")
else:
print("回家五姑娘")
结果:
请输入你兜里的钱:10000
充卡
请输入你兜里的钱:2000
洗个脚回家
请输入你兜里的钱:100
回家五姑娘
if和elif之间也可以嵌套
else和elif不能单独使用
while循环:可以让代码重复执行
while 条件:
代码
成立则执行代码,执行后再次判断,成立则再执行
过程:判断条件是否为真,如果真,则执行代码,然后再次判断条件…直到条件为假,则停止循环(死循环)
while True:
print("喷死你")
代码:
i=1
while i<=100:
print(i)
i=i+1
2.1+2+3+…+100=?
i=1
s=0
while i<=100:
s=s+i # 累加
i=i+1
print(s)
结果:
5050
3.1-2+3-4+…+100=?
代码:
i = 1
s = 0
while i <= 100:
if i % 2 == 1:
s = s + i
else:
s = s - i
i = i + 1
print(s)
结果:
-50
如果满足条件,while循环立即停止
代码:
while True:
content=input("请输入你要喷的内容(q结束喷人):")
if content=='q': #==表示判断左右两端是否一致
break #结束循环
print("发送给下路:",content)
结果:
请输入你要喷的内容(q结束喷人):下路别送了
发送给下路: 下路别送了
请输入你要喷的内容(q结束喷人):苟着
发送给下路: 苟着
请输入你要喷的内容(q结束喷人):我们能赢
发送给下路: 我们能赢
请输入你要喷的内容(q结束喷人):q
进程已结束,退出代码为 0
从1数到10,但去掉4
代码:
i=1
while i<=10:
if i==4:
i=i+1
continue # 终止当前本次循环,继续执行下一次循环
print(i)
i=i+1
结果:
1
2
3
5
6
7
8
9
10
break:处理数据的过程中,发现有一个数据会直接影响到最终结果,则不需要计算
continue:数据检索时,数据库中有一些无效的数据,直接continue
循环可迭代对象
字符串是可迭代的
For 变量 in 可迭代的东西:
代码
把可迭代的东西中的每一项内容拿出来,挨个赋值给变量
每一次复制都要执行一次循环体(代码)
代码:
s="你好啊,我叫赛利亚"
for c in s:
print("这一次循环得到的是:", c)
结果:
这一次循环得到的是: 你
这一次循环得到的是: 好
这一次循环得到的是: 啊
这一次循环得到的是: ,
这一次循环得到的是: 我
这一次循环得到的是: 叫
这一次循环得到的是: 赛
这一次循环得到的是: 利
这一次循环得到的是: 亚
进程已结束,退出代码为 0
后续会用到列表、字典、人组这些应用中
for循环要计数,需要借助range
代码:
for i in range(10): #0~9
print(i)
结果:
0
1
2
3
4
5
6
7
8
9
代码:
for i in range(3, 10): #3~9
print(i)
结果:
3
4
5
6
7
8
9
代码:
for i in range(1, 10, 2): #1,3,5,7,9
print(i)
结果:
1
3
5
7
9
平时常用for循环,while循环常用于死循环
pass:代码占位,后续可再补充,为了防止报错
代码:
a=10
if a>100:
pass
结果:
进程已结束,退出代码为 0