1.长整型表示数的范围比整型更大。在python中,整型、长整型趋于统一,普通用户不用特别关注两者区别,仅当需引用C语言时需要特别注意。
2.操作符
(a)
def multiply(x,y): return x * y
(b)
>>> multiply(23,24)552
3.
def result(x): if 90 <= x <= 100: return "A" elif 80 <= x <= 89: return "B" elif 70 <= x <= 79: return "C" elif 60 <= x <= 69: return "D" else: return "F"
4.
# -*- coding:utf-8 -*-def year_judge(year): if (int(year) % 4 == 0 and int(year) % 100 != 0) or int(year) % 400 == 0: return u"该年是闰年!" else: return u"该年是平年!"
5.
# -*- coding:utf-8 -*-def exchange(x): divide_25, mod_25 = divmod(x, 25)[0], divmod(x,25)[1] if mod_25 == 0: return u"%d 美分换算结果是:%d枚25美分。" % (x,divide_25) else: divide_10, mod_10 = divmod(mod_25, 10)[0], divmod(mod_25, 10)[1] if mod_10 == 0: return u"%d美分换算结果是:%d枚25美分,%d枚10美分。" % (x, divide_25, divide_10) else: divide_5, mod_5 = divmod(mod_10, 5)[0],divmod(mod_10, 5)[1] if mod_5 == 0: return u"%d美分换算结果是:%d枚25美分,%d枚10美分,%d枚5美分。" % (x,divide_25, divide_10, divide_5) else:return u"%d美分换算结果是:%d枚25美分,%d枚10美分,%d枚5美分,%d枚1美分。" % (x, divide_25, divide_10, divide_5,mod_5) def cents_exchange(x): if x < 1: x = x * 100 else: x = int(x) print exchange(x)
6.
# -*- coding:utf-8 -*-def calculator(): global expression expression = raw_input("请输入一个表达式,可以计算加减乘除取余和幂运算,按Q退出。".decode("utf-8").encode("gbk")) if expression == "Q": return u"程序退出,再见" else: for i in ["+","-","**","/","%","*"]: if i in expression: numbers = expression.split(i) if "." in expression: N1 = float(numbers[0]) N2 = float(numbers[1]) else: N1 = int(numbers[0]) N2 = int(numbers[1]) if i == "+": return N1 + N2 elif i == "-": return N1 - N2 elif i == "*": return N1 * N2 elif i == "**": return N1 ** N2 elif i == "%": return N1 % N2 elif i == "/": return N1 / N2 while True: print calculator() if expression == "Q": break
7.
# -*- coding:utf-8 -*-sales = float(raw_input("请输入营业额".decode("utf-8").encode("gbk")))rate = float(raw_input("请输入税率,以两位小数表示".decode("utf-8").encode("gbk")))print u"应缴税额为:%f 元人民币。" % (sales * rate)
8.
# -*- coding:utf-8 -*-def geometry(): prompt = raw_input("计算正方形面积请输入1,立方体体积请输入2,圆面积请输入3,球体积请输入4".decode("utf-8").encode("gbk")) if prompt == "1": side = raw_input("请输入边长".decode("utf-8").encode("gbk")) print u"该正方形的面积是:%d" % (int(side) ** 2) elif prompt == "2": side = raw_input("请输入边长".decode("utf-8").encode("gbk")) print u"该正方体的体积是:%d" % (int(side) ** 3) elif prompt == "3": radius = raw_input("请输入半径".decode("utf-8").encode("gbk")) print u"该圆的面积是:%s" % (float(radius) ** 2 * 3.14) elif prompt == "4": radius = raw_input("请输入半径".decode("utf-8").encode("gbk")) print u"该球的体积是:%s" % (float(radius) ** 3 * 4 * 3.14 / 3)geometry()
9.
a.进制问题 python中0开头的数字表示八进制的数字
b.56l + 78l 代表的是长整数的和
10.
# -*- coding:utf-8 -*-from __future__ import divisiondef F_to_C(F): print u"%.2f°F等于%.2f摄氏度℃" % (F, (F - 32) * 5 / 9)
11.(1)
#Even numberfor i in range(0, 21): if not i % 2: print i, print#Odd numberfor i in range(0,21): if i % 2: print i,
(2)对2进行取余运算,余数0是偶数,否则是奇数
(3)
# -*- coding:utf-8 -*-def judge_divide(x,y): if x % y == 0: print u"%d可以被%d整除!" % (x,y) else: print u"%d不能被%d整除!" % (x,y)def judge(): number1 = int(raw_input("请输入第一个整数".decode("utf-8").encode("gbk"))) number2 = int(raw_input("请输入第二个整数".decode("utf-8").encode("gbk"))) if number1 < number2: judge_divide(number2,number1) else: judge_divide(number1,number2)judge()
12.
# -*- coding:utf-8 -*-import sysprint sys.maxintprint -sys.maxint - 1print sys.float_info.maxprint sys.float_info.minprint sys.long_info
13.
# -*- coding:utf-8 -*-time = raw_input("请输入时间,英文冒号:前为小时数,英文冒号:后为分钟数".decode("utf-8").encode("gbk"))hour = int(time.split(":")[0])minute = int(time.split(":")[1])print u"%d:%d等于%d分钟。" % (hour, minute,hour * 60 + minute)
14.
# -*- coding:utf-8 -*-def Annual_return_rate(rate): per_day_rate = rate / 365.0 investment = 1 interest = round(1 * (1 + per_day_rate) ** 365 - 1, 4) print u"年回报率为: ",interest * 100,"%"
15.
# -*- coding:utf-8 -*-def greatest_common_divisor(x, y): divisor = min(x, y) while divisor >= 1: if not x % divisor and not y % divisor: print u"%d和%d的最大公约数是%d。" % (x, y, divisor) break else: divisor -= 1def least_common_multiple(x, y): multiple = max(x, y) while multiple <= x * y: if multiple % x == 0 and multiple % y == 0: print u"%d和%d的最小公倍数是%d。" % (x, y, multiple) break else: multiple += 1
16.
# -*- coding:utf-8 -*-def Payment(balance = 100, monthly_payment = 16.13): month, remain = divmod(balance, monthly_payment) print "\t\tAmount Remaining" print "pymt#\t", "Paid\t", "Balance" print "-" * 5, "\t", "-" * 5, "\t", "-" * 8 print "0\t$%.2f\t$%.2f" % (0.00, balance) for i in range(1, int(month+1)): print i, "\t$%.2f\t$%.2f" % (round(monthly_payment, 2), round(balance - monthly_payment * i, 2)) print "%d\t$%.2f\t$0.00" % (month + 1,remain)
17.
# -*- coding:utf-8 -*-import randomN = random.randint(2,100)i = 1random_list1 = []while i <= N: random_list1.append(random.randint(0,2 ** 31 - 1)) i += 1h = 1N2 = random.randint(1,100)random_list2 = []while h <= N2: random_list2.append(random.choice(random_list1)) h += 1print sorted(random_list2)