技术标签: python 编辑器 笔记 numpy Python 开发语言
补充win命令行清屏命令:
0
>>> import os
>>> os.system("cls")
首先我们接着来观察这串代码:
# 输入两个数
num1 = float(input("请输入一个整数:"))
num2 = float(input("请输入一个整数:"))
res = num1 + num2
print("两个数之和是:" + str(res))
在python中,
+ *
在字符串中有特殊含义
+
会拼凑两个字符串
*
会安备书输出字符串
我们在这里将有五种格式化字符串方案
示范输出:
# 输入两个数
num1 = float(input("请输入一个整数:"))
num2 = float(input("请输入一个整数:"))
res = num1 + num2
# print("两个数之和是:" + str(res))
print("两个数之和是:" , res)
输出结果
D:\soft\pythonworkplace>test.py
请输入一个整数:1
请输入一个整数:2
两个数之和是: 3.0
D:\soft\pythonworkplace>
逗号译为空格进行拼接,只适合于两个数。
和接下来这个代码类似,不过下面这个代码麻烦些。
print(str(num1) + " + " + str(num2) + " = " + str(res)
代码:
# 输入两个数
num1 = float(input("请输入一个整数:"))
num2 = float(input("请输入一个整数:"))
res = num1 + num2
# print("两个数之和是:" + str(res))
# print("两个数之和是:" , res)
print(str(num1) + " + " + str(num2) + " = " + str(res))
输出结果:
D:\soft\pythonworkplace>test.py
请输入一个整数:1
请输入一个整数:2
1.0 + 2.0 = 3.0
D:\soft\pythonworkplace>
print("%s + %s = %s" %(num1,num2,res))
# 输入两个数
num1 = float(input("请输入一个整数:"))
num2 = float(input("请输入一个整数:"))
res = num1 + num2
# print("两个数之和是:" + str(res))
# print("两个数之和是:" , res)
# print(str(num1) + " + " + str(num2) + " = " + str(res))
print("%s + %s = %s" %(num1,num2,res))
输出结果:
D:\soft\pythonworkplace>test.py
请输入一个整数:1
请输入一个整数:2
1.0 + 2.0 = 3.0
D:\soft\pythonworkplace>
这里输出多个值,所以%后面需要加上括号,而当我们输出一个值时,是可以不加括号的。
print("两个数之和是:%s" %res)
比如像如下代码:
# 输入两个数
num1 = float(input("请输入一个整数:"))
num2 = float(input("请输入一个整数:"))
res = num1 + num2
# print("两个数之和是:" + str(res))
# print("两个数之和是:" , res)
# print(str(num1) + " + " + str(num2) + " = " + str(res))
# print("%s + %s = %s" %(num1,num2,res))
print("两个数之和是:%s" %res)
输出结果:
D:\soft\pythonworkplace>test.py
请输入一个整数:1
请输入一个整数:2
两个数之和是:3.0
D:\soft\pythonworkplace>
format
方法:print("{} + {} = {}" .format(num1, num2, res))
花括号进行占位,代码如下
# 输入两个数
num1 = float(input("请输入一个整数:"))
num2 = float(input("请输入一个整数:"))
res = num1 + num2
# print("两个数之和是:" + str(res))
# print("两个数之和是:" , res)
# print(str(num1) + " + " + str(num2) + " = " + str(res))
# print("%s + %s = %s" %(num1,num2,res))
# print("两个数之和是:%s" %res)
print("{} + {} = {}" .format(num1, num2, res))
输出结果:
D:\soft\pythonworkplace>test.py
请输入一个整数:1
请输入一个整数:2
1.0 + 2.0 = 3.0
D:\soft\pythonworkplace>
print(f"{num1} + {num2} = {res}")
# 输入两个数
num1 = float(input("请输入一个整数:"))
num2 = float(input("请输入一个整数:"))
res = num1 + num2
# print("两个数之和是:" + str(res))
# print("两个数之和是:" , res)
# print(str(num1) + " + " + str(num2) + " = " + str(res))
# print("%s + %s = %s" %(num1,num2,res))
# print("两个数之和是:%s" %res)
# print("{} + {} = {}" .format(num1, num2, res))
print(f"{
num1} + {
num2} = {
res}")
输出结果:
D:\soft\pythonworkplace>test.py
请输入一个整数:1
请输入一个整数:2
1.0 + 2.0 = 3.0
D:\soft\pythonworkplace>
+
-
*
/
//
# 整除 只会获取商,也就是说整数部分
&
# 求模
**
# 幂次方
>>> a = 20
>>> b = 10
>>> c = 3
>>> a + b
30
>>> a - b
10
>>> a * b
200
>>> a / b
2.0
>>> b / c
3.3333333333333335
>>> b // c
3
>>> b % c
1
>>> 9 % 3
0
>>> a ** c
8000
>>> 20 ** 0.5
4.47213595499958
>>> 4 ** 0.5
2.0
>>>
>
<
>=
<=
!=
==
等于
>>> a
20
>>> b
10
>>> c
3
>>> a > b
True
>>> a >= b
True
>>> a < b
False
>>> a <= b
False
>>> a != b
True
>>> a == b
False
>>>
与 and
或 or
非 not
>>> a > b and a > c
True
>>> a > b and a > c and a < c
False
>>> a > b and a > c or a < c
True
>>>
in # 表示是否存在某一个元素
not in # 表示不在里面
>>> ["1","2","3"]
['1', '2', '3']
>>> number = ["1","2","3"]
>>> "1" in number
True
>>> "4" in number
False
>>> "1" not in number
False
>>> "4" not in number
True
is # 是
is not # 不
>>> num = "4"
>>> num == "4"
True
>>> num is "4"
<stdin>:1: SyntaxWarning: "is" with a literal. Did you mean "=="?
True
>>> num is not "4"
<stdin>:1: SyntaxWarning: "is not" with a literal. Did you mean "!="?
False
>>>
注意: 等于判断的两个变量的值,而is判断的是两个变量的内存地址
=
+=
# a += 3 <==>a = | a + 3
-=
*=
/=
//=
**=
>>> a
20
>>> b
10
>>> c
3
>>> a += c
>>> a
23
>>> c
3
>>> a -= c
>>> a
20
>>> c
3
>>> a /= c
>>> a
6.666666666666667
>>> a *= c
>>> a
20.0
>>> a //= c
>>> a
6.0
>>> a **= c
>>> a
216.0
>>>
Python没有自增自减运算符
位:二进制运算
计算机底层:
1、效率高,节省运算步骤。
2、计算机底层是没有数字的,都是用半导体进行模拟0和1。
3、二极管:正到负,半导体,负到正,绝缘体。
4、一个二极管模拟成一个字节,8个bit位组成一个byte字节。
5、8个字节存储最大为255,短整型,两个字节去描述。
加上符号位,范围变为了-128到127,原本范围为0-255.
源码-反码-补码: 解决计算机计算负数问题;
正数没有源码,反码,补码。
则负数需要进行补码来计算。
原码: 数值的标准的二进制位
反码: 符号位不变,其余个位取反
补码: 反码加+1
举例:
-3
原码 1000 0011
反码 1111 1100
补码 1111 1101
计算机底层都是基于补码进行运算的。
&
与运算10
11
10
>>> a = 11
>>> b = 10
>>> a & b
10
>>>
缩小
|
或运算10
11
11
>>> a = 11
>>> b = 10
>>> a | b
11
扩大
^
异或运算10
11
1
>>> a = 11
>>> b = 10
>>> a ^ b
1
>>>
num ^ 0
结果最终为这个值
num ^ num
结果都为0
num & (num-1) == 1
要成立num必须为2的幂次方倍,不包含负数。
发散,随机
~
按位取反2
-3
>>> ~ 2
-3
>>>
>>
右移运算>>> 8 >> 2
2
>>>
计算机所有实验都是基于位运算的
<<
左移运算>>> 2 << 2
8
C、Java:
表达式?值1:值2
简单的if-else结构
Python:
变量 = 值1 if 表达式 else 值2
>>> num = 100 if 100 > 23 else "1"
>>> num
100
>>> num = 100 if 100 < 23 else "1"
>>> num
'1'
>>>
正常情况不能直接写变量直接回车,应为print()
之所以这里可以,因为我用的是终端,终端方便学习而不是来进行写代码。
交换两个数:
实现代码:
num1 = int(input("请输入第一个整数:"))
num2 = int(input("请输入第二个整数:"))
print(f"交换前: num1 = {
num1},num2 = {
num2}")
# 临时变量法
temp = num1
num1 = num2
num2 = temp
print(f"交换后: num1 = {
num1},num2 = {
num2}")
输出结果:
D:\soft\pythonworkplace>test.py
请输入第一个整数:2
请输入第二个整数:3
交换前: num1 = 2,num2 = 3
交换后: num1 = 3,num2 = 2
D:\soft\pythonworkplace>
实现代码:
num1 = int(input("请输入第一个整数:"))
num2 = int(input("请输入第二个整数:"))
print(f"交换前: num1 = {
num1},num2 = {
num2}")
"""
# 临时变量法
temp = num1
num1 = num2
num2 = temp
"""
# 数学法
num1 = num1 + num2
num2 = num1 - num2
num1 = num1 - num2
print(f"交换后: num1 = {
num1},num2 = {
num2}")
输出结果:
D:\soft\pythonworkplace>test.py
请输入第一个整数:5
请输入第二个整数:7
交换前: num1 = 5,num2 = 7
交换后: num1 = 7,num2 = 5
D:\soft\pythonworkplace>
借助寄存器或缓存
实现代码:
num1 = int(input("请输入第一个整数:"))
num2 = int(input("请输入第二个整数:"))
print(f"交换前: num1 = {
num1},num2 = {
num2}")
"""
# 临时变量法
temp = num1
num1 = num2
num2 = temp
# 数学法
num1 = num1 + num2
num2 = num1 - num2
num1 = num1 - num2
"""
num1,num2 = num2,num1
print(f"交换后: num1 = {
num1},num2 = {
num2}")
输出结果:
D:\soft\pythonworkplace>test.py
请输入第一个整数:1
请输入第二个整数:3
交换前: num1 = 1,num2 = 3
交换后: num1 = 3,num2 = 1
D:\soft\pythonworkplace>
实现代码·:
num1 = int(input("请输入第一个整数:"))
num2 = int(input("请输入第二个整数:"))
print(f"交换前: num1 = {
num1},num2 = {
num2}")
"""
# 临时变量法
temp = num1
num1 = num2
num2 = temp
# 数学法
num1 = num1 + num2
num2 = num1 - num2
num1 = num1 - num2
num1,num2 = num2,num1
"""
# 异或法
num1 = num1 ^ num2
num2 = num1 ^ num2
num1 = num1 ^ num2
print(f"交换后: num1 = {
num1},num2 = {
num2}")
输出结果:
D:\soft\pythonworkplace>test.py
请输入第一个整数:2
请输入第二个整数:5
交换前: num1 = 2,num2 = 5
交换后: num1 = 5,num2 = 2
D:\soft\pythonworkplace>
顺序
代码总体而言,是从左到右,从上到下执行的
选择结构
单分支 if condition:
# 如果条件满足,代码会进入if执行
双分支 if condition:
# 如果条件满足,代码会进入if执行
else:
# 如果不满足条件,进入else
多分支 if condition1:
# 如果条件1满足,代码会进入if执行
elif condition2:
xxxx
······
elif conditionn:
print("xxxx")
else:
其他条件
循环结构
1、选择结构单分支实例:
age = int(input("请输入您的年龄:"))
if age >= 18:
print("恭喜你,成年啦")
输出结果:
D:\soft\pythonworkplace>test.py
请输入您的年龄:19
恭喜你,成年啦
D:\soft\pythonworkplace>
这里,如果我们不进行换行缩进,那么会报如下错误:
错误代码:
age = int(input("请输入您的年龄:"))
if age >= 18:
print("恭喜你,成年啦")
报错显示:
D:\soft\pythonworkplace>test.py
File "D:\soft\pythonworkplace\test.py", line 44
print("恭喜你,成年啦")
^
IndentationError: expected an indented block after 'if' statement on line 43
D:\soft\pythonworkplace>
这个Indentation
便是缩进遇到的错误。
如果说这里我们将空格和tab混用也是会出现大问题的,这里就很难用肉眼看出来。
错误代码:
这里缩进的第一行用空格,第二行用tab
age = int(input("请输入您的年龄:"))
if age >= 18:
print("恭喜你,成年啦")
print("恭喜你,成年啦")
错误显示:
D:\soft\pythonworkplace>test.py
File "D:\soft\pythonworkplace\test.py", line 45
print("恭喜你,成年啦")
^
IndentationError: unindent does not match any outer indentation level
D:\soft\pythonworkplace>
当然我们也有以下情况来看Python中缩进的重要性。
实现代码:
age = int(input("请输入您的年龄:"))
if age >= 18:
print("恭喜你,成年啦1")
print("恭喜你,成年啦2")
输出结果:
D:\soft\pythonworkplace>test.py
请输入您的年龄:2
恭喜你,成年啦2
D:\soft\pythonworkplace>
我们可以看到我们未进行缩进最终输出了。
这里我们对比C来看,C中if如果有多行肯定是要加括号来进行编译的,而Python则是比较简单,通过缩进,所以,也就有出现错误的可能。
2、选择结构多分支实例:
代码如下:
age = int(input("请输入您的年龄:"))
if age >= 18:
print("恭喜你,成年啦")
else:
print("健健康康,快快长大")
输出结果:
D:\soft\pythonworkplace>test.py
请输入您的年龄:3
健健康康,快快长大
D:\soft\pythonworkplace>test.py
请输入您的年龄:18
恭喜你,成年啦
D:\soft\pythonworkplace>
3、选择结构多条件多分支实例:
实现代码:
week = input("今天星期数:")
if week == "1":
print("今天星期一,猴子穿花衣")
elif week == "2":
print("今天星期二,猴子去偷桃")
elif week == "3":
print("今天星期三,猴子去爬山")
elif week == "4":
print("今天星期四,猴子去跑步")
elif week == "5":
print("今天星期五,猴子打老虎")
elif week == "6" or week == "7":
print("今天周末,猴子在休息")
输出结果:
D:\soft\pythonworkplace>test.py
今天星期数:1
今天星期一,猴子穿花衣
D:\soft\pythonworkplace>test.py
今天星期数:4
今天星期四,猴子去跑步
D:\soft\pythonworkplace>test.py
今天星期数:6
今天周末,猴子在休息
D:\soft\pythonworkplace>test.py
今天星期数:7
今天周末,猴子在休息
D:\soft\pythonworkplace>
循环: 周而复始则谓之为循环
1、while循环
while condition:
#循环体
实例:
# 要求在控制台上输出100次hello world
index = 0
while index < 100:
print("hello world",index + 1)
index += 1
我们可以将循环分解为四步,通过条件的不断变化,从而确定循环体是否继续执行。
1、索引定义;构建条件;
2、条件判断;
3、整个循环体;
4、index +=1;
2、for循环
Python中的for本质是用来迭代容器中每一个元素!!!
、
3、break与continue
1、break
最简单的死循环:
while True:
print("死循环,会不断的执行")
break的使用
首先这里我们输出1到100
index = 1
while index <=100:
print(index)
index += 1
判断index到50
这里使用break中断循环
index = 1
while index <=100:
if index == 50:
break
print(index)
index += 1
break在Python只有一个作用:终止循环。
在C中还有跳出swtch语法的作用。
2、contince
跳过本次循环
continue的使用
index = 1
while index <=100:
index += 1
if index == 50:
continue
print(index)
输出结果:
我们可以看到这里把50漏掉了。
原因为我们在index为50之后,continue
直接跳回了下一次循环的起点,不进行执行print(index)
当然,我们可以把index += 1这个语句进行变化位置来直观的分析continue的作用:
index = 1
while index <=100:
if index == 50:
continue
print(index)
index += 1
输出结果:
这里我们可以看见进入了死循环,原因是,当index为50时,进行了continue
,则直接跳到if index == 50
,此时的index
为50,那么50=50也就构成了死循环。
此时的退出方式为ctrl+c
pass:
跳过;临时语法
临时让缩进语法不要报错,主要使用在目前不确定缩进体的语法中。
注意如果将来代码实现了,一定要删除pass
else:
(针对break的)
1、使用循环,实现1-100的和;
实现代码:
count = 0
index = 1
while index <= 100:
count += index
index += 1
print(f"0-100的和是{
count}")
输出结果:
D:\soft\pythonworkplace>test.py
0-100的和是5050
D:\soft\pythonworkplace>
2、使用循环,实现1-100的积;
实现代码:
count = 1
index = 1
while index <= 100:
count *= index
index += 1
print(f"1-100的积是{
count}")
输出结果:
D:\soft\pythonworkplace>test.py
1-100的积是93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000
D:\soft\pythonworkplace>
3、打印图案
*
**
***
****
*****
实现代码:
layer =int(input("请输入您要打印的层数:"))
index = 0
while index < layer:
# 每一次打印一个星
j = 0
while j <= index:
print("*")
j += 1
index +=1
我们分析觉得这串代码是对的,实则不然,我们来看下输出结果:
我们可以看到这时是竖着排列的,这又是什么原因的?
原因是print
的自身语法问题:
>>> help(print)
Help on built-in function print in module builtins:
print(*args, sep=' ', end='\n', file=None, flush=False)
Prints the values to a stream, or to sys.stdout by default.
sep
string inserted between values, default a space.
end
string appended after the last value, default a newline.
file
a file-like object (stream); defaults to the current sys.stdout.
flush
whether to forcibly flush the stream.
>>>
我们主要一起来看这一行:
print(*args, sep=' ', end='\n', file=None, flush=False)
这里不同我们可以来实践下:
>>> a = 123
>>> print("a = ",a)
a = 123
>>> print("a = ",a, sep = "+")
a = +123
>>> print("a = ",a, end = "")
a = 123>>>
我们可以看到sep控制的是默认用空格来进行隔开。
end则是默认换行,从而导致刚才情况的发生。
所以真正的实现代码为:
layer =int(input("请输入您要打印的层数:"))
index = 0
while index < layer:
# 每一次打印一个星
j = 0
while j <= index:
print("*",end = "")
j += 1
print("")
index +=1
输出结果为:
D:\soft\pythonworkplace>test.py
请输入您要打印的层数:10
*
**
***
****
*****
******
*******
********
*********
**********
D:\soft\pythonworkplace>
当然,这里我们可以把代码进行简化下:
实现代码:
index = 0
while index < 10:
print("*" * index)
index +=1
输出结果:
D:\soft\pythonworkplace>test.py
*
**
***
****
*****
******
*******
********
*********
D:\soft\pythonworkplace>
4、在控制台上输出一个九九乘法表
实现代码:
i = 1
while i <= 9:
j = 1
while j <= i:
print(f"{
j} x {
i} = {
i * j }",end = " ")
j += 1
print()
i += 1
输出结果:
D:\soft\pythonworkplace>test.py
1 x 1 = 1
1 x 2 = 2 2 x 2 = 4
1 x 3 = 3 2 x 3 = 6 3 x 3 = 9
1 x 4 = 4 2 x 4 = 8 3 x 4 = 12 4 x 4 = 16
1 x 5 = 5 2 x 5 = 10 3 x 5 = 15 4 x 5 = 20 5 x 5 = 25
1 x 6 = 6 2 x 6 = 12 3 x 6 = 18 4 x 6 = 24 5 x 6 = 30 6 x 6 = 36
1 x 7 = 7 2 x 7 = 14 3 x 7 = 21 4 x 7 = 28 5 x 7 = 35 6 x 7 = 42 7 x 7 = 49
1 x 8 = 8 2 x 8 = 16 3 x 8 = 24 4 x 8 = 32 5 x 8 = 40 6 x 8 = 48 7 x 8 = 56 8 x 8 = 64
1 x 9 = 9 2 x 9 = 18 3 x 9 = 27 4 x 9 = 36 5 x 9 = 45 6 x 9 = 54 7 x 9 = 63 8 x 9 = 72 9 x 9 = 81
D:\soft\pythonworkplace>
作业1: 判断一个数,是否是2的指数
实现代码:
n = int(input("输入数字,判断是否是2的指数:"))
if n&(n - 1) == 0:
print("是2的指数")
else:
print("不是2的指数")
输出结果:
作业2: 给定成绩,判断用户成绩的档次
100:提示满分
90~100:优秀
80~100:良好
70~80:还可以,多多努力
60~70:合格
0~60:不合格
0:鸡蛋
实现代码:
score = int(input("输入您的成绩,判断成绩的级别:"))
if score == 100:
print("满分!")
elif 90 <= score < 100:
print("优秀!")
elif 80 <= score <90:
print("良好!")
elif 70 <= score <80:
print("还可以,多多努力!")
elif 60 <= score <70:
print("合格!")
elif 0< score <60:
print("不合格!")
else:
print("输入错误,请重新输入!")
输出结果:
作业3: 下列哪一项是“4是奇数或-9为正数”的否定( C)
A、4是偶数或-9不是负数
B、4是奇数或-9不是负数
C、4是偶数和-9是负数
D、4是奇数和-9不是负数
作业4: 如果A是“10110110”,B是“11100000”,C是“10100000”,下面成立的是(D )
A、 C=A|B
B、 C=~A
C、 C=~B
D、 C=A&B
作业5: 判断一个整数是奇数还是偶数,至少有两种方式实现(位运算已经讲解的话)
方法一
n = int(input("输入数字,判断是奇数还是偶数:"))
if n & 1 == 0:
print("%s是偶数" %n)
elif n & 1 == 1:
print("%s是奇数" %n)
输出结果:
方法二
n = int(input("输入数字,判断是奇数还是偶数:"))
if n % 2 == 0:
print("%s是偶数" %n)
else:
print("%s是奇数" %n)
输出结果:
作业6: 求矩形的面积和周长
实现代码:
length = int(input("请输入矩形的长度:"))
wide = int(input("请输入矩形的宽度:"))
S = length * wide
C = (length + wide) * 2
print(f"矩形的面积为:{
S} 矩形的周长为:{
C}")
输出结果:
作业7: 判断一个数是否是质数(素数):
实现代码:
number=int(input("请输入一个1~100的整数:"))
if number > 1:
for i in range(2,number):
if(number%i==0):
print(number,"不是质数")
print(i,"*",number//i,"=",number)
break
else:
print(number,"是质数")
else:
print(number,"不是质数")
输出结果:
作业8: 设计一个程序,完成(英雄)商品的购买(界面就是第一天打印的界面)
展示商品信息(折扣)->输入商品价格->输入购买数量->提示付款 输入付款金额->打印购买小票(扩展)
实现代码:
print("\t\t\t英雄商城英雄列表")
print("~ * ~"*15)
print("编号 姓名 昵称 价格 库存 描述")
print(" 1 纳尔 迷失之牙 3500 100 丛林不会原谅盲目与无知")
print(" 2 锐雯 放逐之刃 4000 100 她是残忍高效的战士")
print(" 3 薇恩 暗夜猎手 3500 100 这个世界不想人们想象的那么美好")
print(" 4 扎克 生化魔人 3000 100 即使你没有脊柱,你也必须站起来")
print(" 5 杰斯 未来守护者 2500 100 武装着睿智与魅力,你的选择没有错")
print("~ * ~"*15)
ID = int(input("(温馨提示)请输入您要购买的英雄编号:"))
price = int(input("(温馨提示)请输入您要购买的英雄价格:"))
num = int(input("(温馨提示)请输入您要购买的英雄数量:"))
pay = price * num
reminder1 = str(input("是否确认支付(Y/N):"))
if reminder1 == 'Y':
print(f"您需要支付{
pay}元")
else:
print("支付失败")
reminder2 = str(input("是否打印票据(Y/N):"))
if reminder2 == 'N':
print("感谢购买")
else:
print("英雄购买票据")
print("~ * ~"*15)
print(f"\t英雄编号:{
ID}")
print(f"\t英雄价格:{
price}")
print(f"\t英雄数量:{
num}")
print(f"\t应付付款:{
pay}")
print("~ * ~"*15)
输出结果:
作业9: 有一些四位数,百位数字都是3,十位数字都是6,并且它们既能被2整除,又能被3整除,求这样的四位数中最大的和最小的两数各是几?
实现代码:
index=1000
while index<10000:
a=index//100%10
b=index//10%10
if a==3 and b==6 and index%2==0 and index%3==0:
print(index)
index +=1
输出结果:
作业10: 编程求一个四位自然数ABCD,它乘以A后变成DCBA
实现代码:
num=range(1000,10000)
for i in num:
A = int(i / 1000) % 10
B = int(i / 100) % 10
C = int(i / 10) % 10
D = i % 10
num1=D*1000+C*100+B*10+A
if i*A==num1:
print(i)
输出结果:
作业11: 用户输入两个数a、b。如果a能被b整除或a加b大于1000,则输出a;否则输出b。
实现代码:
a,b = eval(input("请输入两个数a,b:"))
if a % b == 0 or a + b > 1000:
print(a)
else:
print(b)
输出结果:
作业12: 请输入一个数,判断这个数是偶数还是奇数,如果使用偶数,请判断从1到该数是3的倍数有哪些,如果是奇数,请判断从1到该数是5的倍数有哪些
实现代码:
num = int(input("请输入一个整数:"))
if num & 1 ==0:
list1 = []
for i in range(1,num+1):
if i % 3 == 0:
list1.append(i)
print(f"{
num}是偶数,从1到{
num}之间是3的倍数的有{
list1}")
else:
list2 = []
for i in range(1,num+1):
if i % 5 == 0:
list2.append(i)
print(f"{
num}是奇数,从1到{
num}之间是5的倍数的有{
list2}")
输出结果:
作业13: 输入三边的长度,求三角形的面积和周长(海伦公式)
实现代码:
a = float(input("请输入三角形第一条边的长度:"))
b = float(input("请输入三角形第二条边的长度:"))
c = float(input("请输入三角形第三条边的长度:"))
C = a + b + c
p = 0.5 * (a + b + c)
S = (p * (p-a) * (p-b) * (p-c)) ** (0.5)
if a + b > c and a + c > b and b + c > a:
print(f"三角形的周长为:{
C},三角形的面积为:{
S}")
else:
print("这不是三角形,请重新输入!")
输出结果:
作业14: 某商店T恤的价格为35元/件(2件9折,3件以上8折),裤子的价格为120 元/条(2条以上9折).小明在该店买了3件T恤和2条裤子,请计算并显示小明应该付多少钱?
实现代码:
a,b = eval(input("请输入T恤和裤子的数量:"))
if a == 2:
price_a = 35 * a * 0.9
elif a >= 3:
price_a = 35 * a * 0.8
else:
price_a = 35 * a
if b >= 2:
price_b = 120 * b * 0.9
else:
price_b = 120 * b
money = price_a + price_b
print(f"应该支付{
money}元")
输出结果:
作业15: 鸡兔同笼,从上面看有35个头,从下面看有94只脚,请问鸡有几只,兔有几只?
实现代码:
a,b = eval(input("请输入头和脚的数量:"))
for rabbit in range(1,a+1):
chicken = a - rabbit
if rabbit + chicken == a and 4 * rabbit + 2 * chicken == b:
print(f"有{
rabbit}只兔子,{
chicken}只鸡")
输出结果:
作业16: 猜数字游戏(使用random模块完成)
电脑随机一个范围内的数,用户输入数据判断,
如果数大了,提供”数大了“
成功之后,加上用户是否继续功能
实现代码:
import random
computer = random.randint(0,99)
print(computer)
count=0
while True:
guess = int(input("请输入你要猜的数字(0-100之间):"))
count += 1
if guess > computer:
print("猜大了")
elif guess < computer:
print("猜小了")
else:
print("猜对了")
A = int(input("是否继续(0/1):"))
if A == 1:
computer = random.randint(0,99)
else:
break
print(f"总共猜了{
count}次")
print ("game over")
输出结果:
作业17: 猜拳游戏:石头、剪刀、布的游戏
实现代码:
import random
player = int(input("请输入您的选择(1.石头 2.剪刀 3.布):"))
computer = random.randint(1,3)
print(f"{
computer}")
if player == 1:
if computer == 1:
print("平手")
elif computer == 2:
print("玩家赢")
else:
print("玩家输")
elif player == 2:
if computer == 1:
print("玩家输")
elif computer == 2:
print("平手")
else:
print("玩家赢")
elif player == 3:
if computer == 1:
print("玩家赢")
elif computer == 2:
print("玩家输")
else:
print("平手")
输出结果:
文章浏览阅读196次。今天在运行pip时报错“ModuleNotFoundError:No module named’pip’”在执行“pip -m ensurepip"时显示已经存在pip,但运行时仍旧报错。解决方法选择重新安装pip1.输入”curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py“ 运行;2.输入”python get-pip.py“...
文章浏览阅读1.1w次,点赞12次,收藏69次。当需要估计的概率密度函数的形式未知,比如我们并不能知道样本的分布形式时,我们就无法用最大似然估计方法或贝叶斯估计方法来进行参数估计,而应该用非参数估计方法。这里就介绍三种非参数估计方法。 需要知道的是,作为非参数方法的共同问题是对样本数量需求较大,只要样本数目足够大众可以保证收敛于任何复杂的位置密度,但是计算量和存储量都比较大。当样本数很少时,如果能够对密度函数有先验认识,则参数估计能取得更好的估..._非参数估计
文章浏览阅读231次。1.向数组中插入元素的方法示例.import java.util.*;public class Test01 {public static void main(String[] args) {int[]list = new int[5]; //长度为5的数组Scanner input = new Scanner(System.in);System.out.println("请为数组..._java用代码先计算要插入数据库的位置,在插入数据
文章浏览阅读1.4k次。图1:用即时贴与白板做的简单流程图前言:近来一段时间,忙于整理业务流程图,期间,关于流程图的绘制方法和工具也与内部团队和外部做了心得交流,恰好,个人生活也牵涉在买房,婚礼,户口迁移等流程中。不知不觉,伴随着实践与反思,个人所得的系统知识趋于完整,今儿天气极好,坐在飘窗一隅,听着间或几声鸟鸣歌唱,偶尔瞥一眼窗外的遍地绿荫,真真觉得是个写点什么的日子。所以就整理成文,如果恰好对你有所帮助,那是真真_张楠 产品经理
文章浏览阅读2.6k次。解决XshellXftpPortable.exe运行不了、打不开问题;1.首先点击控制面板---->程序和功能,进入查看程序中是否下载了,Microsoft_Visual c++(05、08、12),由于XshellXftpPortable需要的运行程序版本较低,所以三个都需要下载安装,安装运行,如图所示:2.完成运行之后,需要重启电脑,重启完成之后如果还不能启动找到服务里面 Wind..._xshellportable打开不了
文章浏览阅读8.6k次,点赞3次,收藏31次。随着国人出国旅游,购物不断增长,现在海外共享充电宝市场也随着升温,引起了各方投资者的密切关注。不得不说,从新马泰,再到欧洲各国,都是一个非常大的市场。共享充电宝主要是先扫码后充电,存在于各种公共场所,主要是为人们带来便利。对智能手机重度依赖的今天,“低电量焦虑症”似乎成为人们的一种新型流行病,甚至有人听到电量低警示音就过敏。现在有了共享充电宝,也许可以缓解下病情。目录一、共享充电宝方案介绍二..._共享充电宝项目开发
文章浏览阅读2.8k次,点赞3次,收藏4次。本人大一,正式接触C语言刚刚三个月_编写一个程序replace,采用命令行的方式,用给定的字符串替换指定文件中的目标字符
文章浏览阅读2.2k次。增强现实(Augmented Reality,简称AR)是一种将虚拟世界的数字信息与真实世界相结合的技术。通过在现实场景中叠加虚拟的图像、声音、视频等内容,AR创造了一种增强的视听体验。_ar
文章浏览阅读1.6k次。1. maven中配置依赖war包配置war包插件 org.apache.maven.plugins maven-war-plugin 2.6 _maven war包依赖war包
文章浏览阅读4.7k次,点赞3次,收藏15次。效果图以下是代码及 每行代码解释,仅供参考。<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-wi..._js倒三角
文章浏览阅读99次。springboot基于springboot的家居销售网站。springboot基于vue的百乐儿童玩具公司管理系统。springboot晨曦文学社在线投稿系统的设计与实现。springboot物流车辆规费管理系统的设计与实现。springboot校园课室资源预约系统设计与实现。ssm基于SSM高校教师个人主页网站的设计与实现。ssm基于Vue和mysql的智能图书管理系统。springboot编程训练系统设计与实现。ssm基于ssm的电子配件公司仓库管理系统。springboot点餐系统的设计与实现。
文章浏览阅读1k次,点赞22次,收藏26次。通常使用的网络(包括互联网)是在TCP/IP协议族的基础上运作的。而 HTTP属于它内部的一个子集。协议族。