运算符
=:赋值运算符,将右边的值赋予左边,比如变量就是这样的操作
算数运算符
+
-
*
/
+=:将一个值自增
a = 1
a += 10
print(a)
11
-=:将一个值自减
同上
print(10**10) #10的10次方
10000000000
//:地板除,整数除法
print(10//3)
3
%:模运算(取余)
print(10%3)
1
逻辑运算符
逻辑与
逻辑与,运算符为and &&
只要表达中出现0,则结果为0
#逻辑与,运算符为and &&
1 and 1 = 1
1 and 0 = 0
0 and 1 = 0
0 and 0 = 0
例:用户在登录过程中使用用户密码登录,只有当输入的用户名和密码正确时,才能正常登录,其他都为0,也就是
逻辑或
逻辑非,运算符为 or ||(gun)
只要有一个为真(1),结果则为真(1)
#只要其中一个值成立,则表示是结果为真
1 or 1 = 1
1 or 0 = 1
0 or 1 = 1
0 or 0 = 0
逻辑非(取反)
逻辑非运算符为! not
not 1 = 0
not 0 = 1
^:异或运算(XOR)
循环冗余校验使用的就是xor进行加密
异或运算具有还原性
#还原性:
a:101011010
^ b:001011010
c:011111111
#两个值的异或值结果与两个值其中任何一个值进行再一次异或会得到另一个值
#如:a^b=c c^b=a c^a=b,相当于用户密码的校验方法,使用用户名和密码的第三个值进行验证
用户名:101011010
^ 密码码:001011010
校验码:011111111
实例:
a = 10
b = 19
a = a ^ b #10 = 10^19 = 25
b = a ^ b #19 = 25^19 = 10
a = a ^ b #25 = 25^10 = 19
print(a, b)
19 10
比较运算符
#==:左右两个值是否相等
1 == 1 and 0 == 0
#>(大于) <(小于) !=(不等于) >=(大于等于) <=(小于等于)
流程控制语句
if
xiaoming = 6
if xiaoming > 6:
print ('滚着去学校')
else:
print ('飞着去学校')
常用语句用法
input
input输入的永远是字符串,即使是数字也被认为是字符串
可以通过转换数据类型来变为整数型int(input(" "))
,或者其他的数字型数据类型转换
#人类体指算法
user_hight = float(input('请输入身高(m):'))
user_weight = int(input('请输入体重(kg):'))
result = (user_weight/(user_hight**2)) #体指运算公式(体重/身高^2)
print ("您的体指为:%.2f" % result) #取余并且保留两位浮点
if result > 28 or result < 18:
print('体指状态:不健康')
elif result > 24 or result < 19:
print('体指状态:亚健康')
else:
print("体指状态:健康")
if result < 18:
print("体指建议:太瘦了,多吃点肥肉")
elif result < 19:
print("体指建议:偏瘦,多吃点排骨,香的一批")
elif result > 24:
print("体指建议:偏胖,建议多运动,减减肥~")
elif result > 28:
print("体指建议:肥胖,建议科学减肥,规划饮食,增加运动")
#运行
请输入身高(m):1.72
请输入体重(kg):55
您的体指为:18.59
体指状态:亚健康
体指建议:偏瘦,多吃点排骨,香的一批
print()
将信息输出到屏幕上
print('a')
print() #print默认自带一个换行符
print('b')
#运行
a
b
自动任意拼接任意数据类型
print('a',12,12.6)
a 12 12.6
print('1'+'2'+'3') #使用+可以拼接不同变量的值
123
输出占位符
sep:中间占位,默认是一个空格占位
end:结束占位,默认是换行符(\n)
#sep
print('1','2',3,sep='*')
#运行
1*2*3
#end
print('1','2',3,end=' ~~~~~') #当看到此符号意味着一行结束
#运行
1 2 3 ~~~~~
#实际应用end
>>> print(1,2,3,end='') #换行符不使用任何符号则下一次的输入标识>>>会直接出现在输出的值后面
#运行
1 2 3>>>
#end应用\n
print('1','2',3,end='结束了\n回家吧')
#运行
1 2 3结束了
回家吧
输出大量相同字符
print(100 * '*')
****************************************************************************************************
输出指定下标范围
输出变量的索引下标时,通过:可以选择第几个下标到第几个下标
print(start:end:step)
start:起始下标
end:停止下标
step:步进,start和end小标范围内下标数字的间隔,默认为1
#起始,停止
name = "chaiyanjiang"
print(name[3:6])
#运行
iya #实际输出的索引下标范围是3-5
#步进
name = "chaiyanjiang"
print(name[1:8:2]) #下标间隔为2,从起始开始,也就是第一位为下标1,第二位为下标3,一次类推
#运行
hiaj
格式化字符串
%s:string,无特殊要求%s是万能的
%d:十进制
%f:float %.2f表示保留小数两位并四舍五入
hour = 8
minute = 30
second = 40
#正常思路会按照以上拼接字符串即可
print("现在时间",hour,"时",minute,"分",second,"秒")
#运行
现在时间8时30分40秒
#使用格式化字符串的方法来拼接
print('现在时间是%s时%s分%s秒' % (hour,minute,second))
#一个%s为一个变量占位,然后通过%来声明后面准备按照占位顺序,放入变量
#如果占位中只有一个格式转换,则声明变量时,不需要对变量进行括号
print('现在是%s点' % hour)
#运行
现在是8点
print('现在是%s点' % (hour + 1))
现在是9点
#在格式化过程中,如果想要使用%号或者其他元字符,需要使用重复的两次元字符,将会输出一个元字符的原意
如:
a = 10
print("%s%%" % a)
如:
print('\\')
\