zoukankan      html  css  js  c++  java
  • 利用Python制作万年历

    第一个Python小程序,制作简易万年历。现在开始学习Python的目的主要是为了学习人工智能

    写这个小程序的目的主要是了解一下Python的简单语法使用,其实写这个程序之前,我还没有看Python的语法,是直接网上搜索了Python万年历的例子,然后看了下,本是想直接粘贴过来,运行看看,没想到运行结果不是正常的,然后自己就开始调试,感觉语法很人性化,容易看懂,只不过也有好多的小细节:

    (1)函数和函数之间要空两行,不然会报警告

    (2)程序最后需要空一行,不然也有警告

    (3)没有了其他语言,如C/C++,Java的大括号,而是用严格的对齐方式来表明作用域

    (4)&& || 变成了 and or

    (5)true false 变成了True False

    (6)定义函数用 def

    (7)主要的关键字末尾用  :    加了冒号之后,你再换行,编译器会直接进行缩进对齐,如:def leap_year(year):

    (8)函数,变量的命名要小写

    (9)循环可以用range,有点像matlab

    (10)这是一种脚本语言,想Linux环境是默认有Python环境的,就像shell一样,可以被解释

    (11)这不是新兴的语言,1991年就已经发行了,现在之所以这么流行,是因为人工智能被广泛应用了

    (12)想定义变量,直接命名就可以,但也有这种写法: y = int(_year_)  ,把_year_转成int类型,昨天调了半天

    (13)print用法,print(end=" "),它默认是 的,这个也调了半天

    通过这个例子,简单明白了一些基本操作,希望看见这篇博客的朋友能明白,语言真的只是一个工具,能熟练运用当然再好不过了,但是更重要的编程的思维,但最好也要有自己能熟练操作的一门语言。下面是具体的例子,有兴趣的朋友可以看看,没有写注释,勉强看吧。

    def leap_year(year):
        if 0 == year % 4 and 0 != year % 400 or 0 == year % 400:
            return True
        else:
            return False
    
    
    def get_month_days(year, month):
        days = 31
        if 2 == month:
            if leap_year(year):
                days = 29
            else:
                days = 28
        elif 4 == month or 6 == month or 9 == month or 11 == month:
            days = 30
        return days
    
    
    def get_total_days(year, month):
        total_days = 0
        for i in range(1, year):
            if leap_year(year):
                total_days += 366
            else:
                total_days += 365
        for i in range(1, month):
            total_days += get_month_days(year, i)
        return total_days
    
    
    _year_ = input("请输入年份:")
    _month_ = input("请输入月份:")
    
    print()
    print("日	一	二	三	四	五	六")
    print()
    
    count = 0
    y = int(_year_)
    m = int(_month_)
    
    for c in range(get_total_days(y, m) % 7):
        print(end="	")
        count += 1
    
    for day in range(1, get_month_days(y, m)+1):
        print(day, end="	")
        count += 1
        if 0 == count % 7:
            print("
    ")

  • 相关阅读:
    eclipse中jdk源码调试步骤
    [POJ2777] Count Color
    [HNOI2004] L语言
    [USACO08DEC] 秘密消息Secret Message
    The XOR Largest Pair [Trie]
    前缀统计 [Trie]
    于是他错误的点名开始了 [Trie]
    Palindrome [Manecher]
    兔子与兔子 [Hash]
    [CF985F] Isomorphic Strings
  • 原文地址:https://www.cnblogs.com/chen-cai/p/11613813.html
Copyright © 2011-2022 走看看