python入门代码练习

来源:互联网 发布:最大的淘宝客网站 编辑:程序博客网 时间:2024/04/30 11:20

ex1.

#!/usr/bin/env Python3##ex1._01helloworld.pyprint("hello world")

ex2.

#!/usr/bin/env Python3##ex2. _02Sum.py#用户输入num1 = input('输入第一个数字')num2 = input('输入第二个数字')#求和sum = float(num1) + float(num2)#显示计算结果print('数字 {0} 和 {1} 相加结果为:{2}'.format(num1, num2, sum))

ex3.

#!/usr/bin/env Python3##ex3. _03Sqrt.pyimport cmathnum = float(input('请输入一个数字:'))num_sqrt = num ** 0.5print('%0.3f的平方根为 %0.3f' %(num, num_sqrt))#计算负数num = int(input("请输入一个数字:"))num_sqrt = cmath.sqrt(num)print('{0}的平方根为{1:0.3f} + {2:0.3f}j'.format(num,                                            num_sqrt.real,                                            num_sqrt.imag))

ex4.

#!/usr/bin/env Python3##ex4. _04RootCalc.pyimport cmatha = float(input('输入a:'))b = float(input('输入b:'))c = float(input('输入c:'))#计算d = (b ** 2) - (4 * a * c)mol1 = (-b + cmath.sqrt(d)) / (2 * a)mol2 = (-b + cmath.sqrt(d)) / (2 * a)print('结果为{0} 和 {1}'.format(mol1, mol2))

ex5.

#!/usr/bin/env Python3##ex5. _05TrangleArea.pya = float(input('请输入三角形第一边长:'))b = float(input('请输入三角形第二边长:'))c = float(input('请输入三角形第三边长:'))s = (a + b + c) / 2area = (s * (s - a) * (s - b) * (s -c)) ** 0.5print('三角形面积为%0.2f' %area)

ex6.

#!/usr/bin/env Python3##ex6. _06RandNum.pyimport randomprint(random.randint(0, 9))

ex7.

#!/usr/bin/env Python3##ex7. _07SwitchTemperature.pycelsius = float(input('输入设施温度:'))fahrenheit = (celsius * 1.8) + 32print('%0.1f 摄氏度转华氏度为 %0.1f' %(celsius, fahrenheit))

ex8.

#!/usr/bin/env Python3##ex8. _08SwapVal.pyx = input('输入 x 值:')y = input('输入 y 值:')temp = xx = yy = tempprint('交换后 x 的值为:{}'.format(x))print('交换后 x 的值为:{}'.format(y))#不使用临时变量x = input('输入 x 值:')y = input('输入 y 值:')x, y = y, xprint('交换后 x 的值为:{}'.format(x))print('交换后 x 的值为:{}'.format(y))


ex9.

#!/usr/bin/env Python3##ex9. _09IfDemo.pynum = float(input("输入一个数字:"))if num > 0:    print("正数")elif num == 0:    print("零")else:    print("负数")num = float(input("输入一个数字:"))if num >= 0:    if num == 0:        print("零")    else:        print("正数")else :    print("负数")

ex10.

#!/usr/bin/env Python3##ex10. _10IsNum.pydef is_number(s):    try:        float(s)        return True    except ValueError:        pass    try:        import unicodedata        unicodedata.numeric(s)        return True    except (TypeError, ValueError):        pass    return Falseprint(is_number('foo'))print(is_number('1'))print(is_number('1.3'))print(is_number('-1.37'))print(is_number('1e3'))print(is_number('foo'))##isdiqit()方法检测字符串是否只由数字组成##isnumeric()方法检测字符串是否只由数字组成,这种只针对unicode对象

ex11.

#!/usr/bin/env Python3##ex11. _11IsNumTwo.pynum = int(input("请输入一个数字:"))if (num % 2) == 0:    print("{0} 是偶数".format(num))else:    print("{0} 是奇数".format(num))

ex12.

#!/usr/bin/env Python3##ex12. _12IsYear.pyyear = int(input("输入一个年份:"))if (year % 4) == 0:    if(year % 100) == 0:        if(year % 400) == 0:            print("{0}是润年:".format(year))        else:            print("{0}不是润年:".format(year))    else:        print("{0}是润年:".format(year))else:    print("{0}不是润年:".format(year))

ex13.

#!/usr/bin/env Python3##ex13. _13GetMax.pyprint(max(1, 2))print(max('a', 'b'))print(max([1, 2]))print(max((1, 2)))print("80, 100, 1000最大值为:", max(80, 100, 1000))print("-20, 100, 400最大值为:", max(-20, 100, 400))print("-80, -20, -10最大值为:", max(-80, -20, -10))print("0, 100, -400最大值为:", max(0, 100, -400))

ex14.

#!/usr/bin/env Python3##ex14. _14Prime.py##循环语句可以有 else 子句,##它在穷尽列表(以for循环)或条件变为 false##(以while循环)导致循环终止时被执行,##但循环被break终止时不执行。num = int(input("请输入一个数字:"))if num > 1:    for i in range(2, num):        if (num % i) == 0:            print(num, "不是质数")            print(i, "乘与", num // i, "是", num)            break    else:        print(num, "是质数")else:    print(num, "不是质数")

ex15.

#!/usr/bin/Python3##ex15. _15PrimePrint.pylower = int(input("输入区间最小值:"))upper = int(input("输入区间最大值:"))for num in range(lower, upper + 1):    if num > 1:        for i in range(2, num):            if (num % i) == 0:                break        else:            print(num)

ex16.

#!/usr/bin/python3##ex16. _16Factorial.pynum = int(input("请输入一个数字"))factorial = 1if num < 0:    print("抱歉,负数没有阶乘")elif num == 0:    print("0 的阶乘为1")else:    for i in range(1, num + 1):        factorial = factorial * i    print("%d 的阶乘为 %d" %(num, factorial))

ex17.

#!/usr/bin/ python3##ex17. _17NineNine.pyfor i in range(1, 10):    for j in range(1, i + 1):        print('{} x {} = {} \t'.format(i, j, i * j), end='')    print()##通过指定end参数的值,可以取消在末尾输出回车符,实现不换行

ex18.

#!/usr/bin/python3##ex18. _18FebNumList.pynterms = int(input("你需要几项"))n1 = 0n2 = 1count = 2if nterms <= 0:    print("请输入一个正数")elif nterms == 1:    print("斐波那契数列:")    print(n1)else:    print("斐波那契数列:")    print(n1, ",", n1, end=" , ")    while count < nterms:        nth = n1 + n2        print(nth, end=" , ")        n1 = n2        n2  = nth        count += 1

ex19.

#!/usr/bin/python3##ex19. _19AmstlNum.py##如果一个n位正整数等于其各位数字的n次方之和,##则称该数为阿姆斯特朗数num = int(input("请输入一个数字:"))sum = 0n = len(str(num))temp = numwhile temp > 0:    digit = temp % 10    sum += digit ** n    temp //= 10if num == sum:    print(num, "是阿姆斯特朗数")else:    print(num, "不是阿姆斯特朗数")

ex20.

#!/usr/bin/python3##ex20. _20DecToBinOctHex.pydec = int(input("输入数字:"))print("十进制数:", dec)print("转二进制数:", bin(dec))print("转八进制数:", oct(dec))print("转十六进制数:", hex(dec))

ex21.

#!/usr/bin/python3##ex21. _21ASCIIToChar.pyc = input("请输入一个字符:")a = int(input("请输入一个Ascii码:"))print(c + "的ascii 码为", ord(c))print(a, "的字符为", chr(a))

ex22.

#!/usr/bin/python3##ex22. _22BigNum.pydef hcf(x, y):    if x > y:        smaller = y    else:        smaller = x    for i in range(1, smaller + 1):        if ((x % i == 0) and (y % i == 0)):            hcf = i    return hcfnum1 = int(input("输入第一个数字:"))num2 = int(input("输入第二个数字:"))print(num1, "和", num2, "的最大公约数为", hcf(num1, num2))

ex23.

#!/usr/bin/python3##ex23. _23MinNum.pydef lcm(x, y):    if x > y:        greater = x    else:        greater = y    while (True):        if((greater % x == 0) and (greater % y == 0)):            lcm = greater            break        greater += 1    return lcmnum1 = int(input("输入第一个数字"))num2 = int(input("输入第二个数字"))print(num1, "和", num2, "的最小公倍数为", lcm(num1, num2))

ex24.

#!/usr/bin/python3##ex24. _24Calc.pydef add(x, y):    return x + ydef substract(x, y):    return x - ydef miltiply(x, y):    return x * ydef divide(x, y):    return x / yprint("选择运算:")print("1.相加:")print("2.相减:")print("3.相乘:")print("4.相除:")choice = input("输入你的选择1,2,3,4:")num1 = int(input("输入第一个数字:"))num2 = int(input("输入第二个数字:"))if choice == '1':    print(num1, "+", num2, "=", add(num1, num2))elif choice == '2':    print(num1, "-", num2, "=", substract(num1, num2))elif choice == '3':    print(num1, "*", num2, "=", miltiply(num1, num2))elif choice == '4':    print(num1, "/", num2, "=", divide(num1, num2))else:    print("非法输入")

ex25.

#!/usr/bin/python3##ex25. _25Date.pyimport calendaryy = int(input("输入年份:"))mm = int(input("输入月份:"))print(calendar.month(yy, mm))

ex26.

#!/usr/bin/python3##ex26. _26FebNum.pydef recur_fibo(n):    if n <= 1:        return n    else:        return (recur_fibo(n - 1) + recur_fibo(n - 2))nterms = int(input("您要输出几项?"))if nterms <= 0:    print("输入正数")else:    print("斐波那契数列:")    for i in range(nterms):        print(recur_fibo(i))

ex27.

#!/usr/bin/python3##ex27. _27FIleRW.pywith open("test.txt", "wt") as out_file:    out_file.write("写入文本")with open("test.txt", "rt") as in_file:    text = in_file.read()print(text)

ex28.

#!/usr/bin/python3##ex28. _28StringTest.pyprint("测试一")str = "y0n"# 判断所有字符都是数字或者字母print(str.isalnum())# 判断所有字符都是字母print(str.isalpha())# 判断所有字符都是数字print(str.isdigit())# 判断所有字符都是小写print(str.islower())# 判断所有字符都是大写print(str.isupper())# 判断所有单词都是首字母大写,像标题print(str.istitle())# 判断所有字符都是空白字符、\t、\n、\rprint(str.isspace())print("------------------")print("测试二")str = "stringTest"# 判断所有字符都是数字或者字母print(str.isalnum())# 判断所有字符都是字母print(str.isalpha())# 判断所有字符都是数字print(str.isdigit())# 判断所有字符都是小写print(str.islower())# 判断所有字符都是大写print(str.isupper())# 判断所有单词都是首字母大写,像标题print(str.istitle())# 判断所有字符都是空白字符、\t、\n、\rprint(str.isspace())

ex29.

#!/usr/bin/python3##ex29. _29UpToLow.pystr = "y0n"# 把所有字符中的小写字母转换成大写字母print(str.upper())# 把所有字符中的大写字母转换成小写字母print(str.lower())# 把第一个字母转化为大写字母,其余小写print(str.capitalize())# 把每个单词的第一个字母转化为大写,其余小写print(str.title())

ex30.

#!/usr/bin/python3##ex30. _30CalcDayOfMomth.pyimport calendarmonthRange = calendar.monthrange(2016, 9)print(monthRange)##输出的是一个元组,# 第一个元素是所查月份的第一天对应的是星期几(0-6),# 第二个元素是这个月的天数。# 以上实例输出的意思为 2016 年 9 月份的第一天是星期四,# 该月总共有 30 天。

ex31.

#!/usr/bin/python3##ex31. _31GetYesterday.pyimport datetimedef getYesterday():    today = datetime.date.today()    oneday = datetime.timedelta(days=1)    yesterday = today - oneday    return yesterdayprint(getYesterday())

ex32.

#!/usr/bin/python3##ex32. _32ListOperator.pyli = ["a", "b", "mpilgrim", "z", "example"]print(li)print(li[1])print(li[-1])print(li[-3])print(li[1:3])print(li[1:-1])print(li[0:3])li.append("new")print(li)li.insert(2, "new")print(li)li.extend(["two", "elements"])print(li)print(li.index("example"))print(li.index("new"))print("c" in li)li.remove("z")print(li)li = li + ["sss", 'sd']print(li)'''7.使用join链接list成为字符串>>> params = {"server":"mpilgrim", "database":"master", "uid":"sa", "pwd":"secret"}>>> ["%s=%s" % (k, v) for k, v in params.items()]['server=mpilgrim', 'uid=sa', 'database=master', 'pwd=secret']>>> ";".join(["%s=%s" % (k, v) for k, v in params.items()])'server=mpilgrim;uid=sa;database=master;pwd=secret'join 只能用于元素是字符串的 list; 它不进行任何的类型强制转换。连接一个存在一个或多个非字符串元素的 list 将引发一个异常。8.list 分割字符串>>> li = ['server=mpilgrim', 'uid=sa', 'database=master', 'pwd=secret']>>> s = ";".join(li)>>> s'server=mpilgrim;uid=sa;database=master;pwd=secret'>>> s.split(";")['server=mpilgrim', 'uid=sa', 'database=master', 'pwd=secret']>>> s.split(";", 1)['server=mpilgrim', 'uid=sa;database=master;pwd=secret']split 与 join 正好相反, 它将一个字符串分割成多元素 list。注意, 分隔符 (";") 被完全去掉了, 它没有在返回的 list 中的任意元素中出现。split 接受一个可选的第二个参数, 它是要分割的次数。9.list 的映射解析>>> li = [1, 9, 8, 4]>>> [elem*2 for elem in li][2, 18, 16, 8]>>> li[1, 9, 8, 4]>>> li = [elem*2 for elem in li]>>> li[2, 18, 16, 8]10.dictionary中的解析>>> params = {"server":"mpilgrim", "database":"master", "uid":"sa", "pwd":"secret"}>>> params.keys()['server', 'uid', 'database', 'pwd']>>> params.values()['mpilgrim', 'sa', 'master', 'secret']>>> params.items()[('server', 'mpilgrim'), ('uid', 'sa'), ('database', 'master'), ('pwd', 'secret')]>>> [k for k, v in params.items()]['server', 'uid', 'database', 'pwd']>>> [v for k, v in params.items()]['mpilgrim', 'sa', 'master', 'secret']>>> ["%s=%s" % (k, v) for k, v in params.items()]['server=mpilgrim', 'uid=sa', 'database=master', 'pwd=secret']11.list 过滤>>> li = ["a", "mpilgrim", "foo", "b", "c", "b", "d", "d"]>>> [elem for elem in li if len(elem) > 1]['mpilgrim', 'foo']>>> [elem for elem in li if elem != "b"]['a', 'mpilgrim', 'foo', 'c', 'd', 'd']>>> [elem for elem in li if li.count(elem) == 1]['a', 'mpilgrim', 'foo', 'c']'''



0 0
原创粉丝点击