a, b = 0, 1
while b < 10: print(b) a, b = b, a+b其中代码 a, b = b, a+b 的计算方式为先计算右边表达式,然后同时赋值给左边,等价于:
n=b
m=a+b
a=n
b=m执行以上程序,输出结果为:
1
1
2
3
5
8
题目:企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?
i = int(raw_input('净利润:'))
arr = [1000000,600000,400000,200000,100000,0]
rat = [0.01,0.015,0.03,0.05,0.075,0.1]
r = 0
for idx in range(0,6): if i>arr[idx]: r+=(i-arr[idx])*rat[idx]
print (i-arr[idx])*rat[idx]
i=arr[idx]
print r
知识点解析:
raw_input() 将所有输入作为字符串看待,返回字符串类型。
python range() 函数可创建一个整数列表,一般用在 for 循环中。
我的逻辑,直接用if判断
#i = int(raw_input('请输入利润'))
i = 520000
if i <= 100000:
print("奖金总数为" ,i*0.1)
elif i <= 200000:
print("奖金总数为" ,100000*0.1+(i-100000)*0.075)
elif i <= 400000:
print("奖金总数为" ,100000*0.1+100000*0.075+(i-200000)*0.05)
elif i <= 600000:
print("奖金总数为" ,100000*0.1+100000*0.075+200000*0.05+(i-400000)*0.03)
elif i <= 1000000:
print("奖金总数为" ,100000*0.
主要是Python函数的定义,函数参数的传递,列表截取等应用
blockchian = [1]
def add_value(money):
blockchian.append([blockchian[-1],money])
print(blockchian)
add_value(2.3)
add_value(4.6)
add_value(5.8)
add_value(4)
输出内容:
[1, [1, 2.3]]
[1, [1, 2.3], [[1, 2.3], 4.6]]
[1, [1, 2.3], [[1, 2.3], 4.6], [[[1, 2.3], 4.6], 5.8]]
[1, [1, 2.3], [[1, 2.3], 4.6], [[[1, 2.3], 4.6], 5.8], [[[[1, 2.3], 4.6], 5.8], 4]]
自己又默了一遍发现几个单词没记住,列表截取的语法没用对
Python3中单行注释以 # 开头,实例如下:#!/usr/bin/python3
# 第一个注释
print ("Hello, Python!") # 第二个注释
Python3中多行注释可以用多个 # 号,还有 ''' 和 """。实例如下:#!/usr/bin/python3
# 第一个注释# 第二个注释
'''
第三注释
第四注释
'''
"""
第五注释
第六注释
"""
print ("Hello, Python!")
Python3中行与缩进python最具特色的就是使用缩进来表示代码块,不需要使用大括号 {} 。
缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数。实例如下:
if True: print ("True")
else: print ("False")
以下代码最后一行语句缩进数的空格数不一致,会导致运行错误:
if True:
print ("Answer")
print ("True")
else:
print ("Answer")
print ("False") # 缩进不一致,会导致运行错误