Python学习笔记-文件操作

任何语言的学习都是从打印hello world开始的,学习Python可以不意外。

 print("hello world")

1、变量

Python的变量不需要指定类型,根绝初始化值的类型来确定变量的类型,可以通过type()函数测试变量的类型

a = "hello world"
printf(type(a))

b = 2017
printf(type(b))

2、输入和输出

  • 格式化输出:Python的格式化输出和C语音有些类似,不同的地方是,格式字符串后面接%,如果是多个变量,需要用括号括起来。

    print("%s,%s"%("Hello", "world"))
    
  • 输入:市面主要的Python版本是Python2和Python3,这里面有个坑,input函数在输入字符串时Python2和Python3是相同的,但输入数字的时候,Python2会处理成数字,而Python3会当成字符串处理,Python2的raw_input和Python3的input是相同的

3、条件语句写法:

if condition1:
    print("condition1") 
elif condition2 and condition3:
    print("condition2 and condition3")  
elif condition4 or condition5:
    print("condition4 or condition5")
else:
    print("都不满足条件")

4、循环语句写法

while condition:
    if condition1:
        break
    if condition2:
        continue

for item in array :
    print(item)

5、综合练习-两个变量交换

def swap(a, b)
    a, b = b, a

6、综合练习-猜拳游戏

#!/usr/local/bin/python3

import random
print("欢迎参加猜拳游戏")

while True:
    num = input("请输入一个数字:1、石头;2、剪刀;3、布\n0、退出游戏\n")
    if num == "0":
        break
    if num != "1" and num != "2" and num != "3":
        print("输入错误")
        continue
    computer = str(random.randint(1,3))
    if (num == "1" and computer == "2") or (num == "2" and computer == "3") or (num == "3" and computer == "1"):
        print("恭喜您赢了")
    elif num == computer:
        print("平局")
    else:
        print("再接再厉")

7、综合练习-学生成绩查询系统

#!/usr/local/bin/python3

#全局变量,如果是可变的,在修改的时候,可以不用加global,当如果是不可变的,在修改的时候,必须加上global
#全局学生成绩数据字典
gradeDic = {}

def printWelcom():
    "打印欢迎界面"
    
    print("="*50)
    print("=============欢迎进入学生成绩系统=========")
    print("1、进入成绩录入:")
    print("2、进入成绩查询:")
    print("0、退出系统")
    print("="*50)

def checkGrade(grade):
    "判断输入的成绩是否有效"

    gradet = 1
    if grade.isdigit():
        num = int(grade)
        if num < 0 or num > 100:
            print("请输入一个0-100的数字")
            return False
        return True
     else:
         print("请正确输入成绩(0-100)")
         return False
    
def checkYseOrNo(inputMessage):
    "判断输入的操作是否为Y和N"

    while True:
        opt = input("%s"%inputMessage)
        if opt == "Y" or opt == "y":
            return True
        elif opt == "N" or opt == "n":
            return False
        else:
            print("输入错误")

def insterGrade():
    "录入学生成绩"

    name = ""
    math = ""
    chinese = ""
    english = ""

    while True:
        name = input("请输入学生姓名:")
        while True:
            grade = input("请输入数学成绩(0-100):")
            isOK = checkGrade(grade);
            if isOK:
                math = grade
                break
            while True:
                grade = input("请输入语文成绩(0-100):")
                isOK = checkGrade(grade);
                if isOK:
                    chinese = grade
                    break
             while True:
                grade = input("请输入英语成绩(0-100):")
                isOK = checkGrade(grade)
                if isOK:
                    english = grade
                    break
            print("%s的数学成绩:%s;语文成绩:%s;英语成绩:%s"%(name,math,chinese,english)
            while True:
                opt = checkYseOrNo("是否插入?(Y/N):")
                if opt:
                    user = {"数学":math, "语文":chinese, "英语":english}
                    gradeDic[name] = user
                    break
                 else:
                    break
            opt = checkYseOrNo("是否继续录入学生成绩?(Y/N):")
            if opt:
                continue
            else:
                break

def queryGrade():
    "查询学生成绩"
    while True:
        name = input("请输入学生姓名:(输入0退出):")
        if name == "0":
            break
        else:
            res = gradeDic.get(name, "没有该学生成绩信息")
            print(res)

while True:
    printWelcom()
    opt = input("请输入一个选项:")
    if opt == "0":
        break

    elif opt == "1":
        insterGrade()

    elif opt == "2":
        queryGrade()

    else:
        print("输入选项错误,请重新输入。")

以上代码可以在GitHub找到。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,284评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,115评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,614评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,671评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,699评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,562评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,309评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,223评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,668评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,859评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,981评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,705评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,310评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,904评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,023评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,146评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,933评论 2 355

推荐阅读更多精彩内容