04_Python 第二课

目录

一、趣味游戏

二、基础语法

标识符

关键字

变量

语句

转义字符

字符串

三、小游戏讲解


一、趣味游戏

        可以自己先尝试着编写一下,具体的讲解在本文的最后

        打开IDLE -【File】-【New File】

"""用Pyhon设置的第一个游戏"""

temp = input("不妨猜一下Leo现在心里面想的是哪个数字:")
guess = int(temp)

if guess == 8:
    print("你是我肚子里面的蛔虫吗?")
    print("猜中了也没奖励!!!")
else:
    print("猜错啦,Leo我现在心里面想的是8!")

print("游戏结束,不玩啦~")

编辑完成后,依次点击 【Run】-【Run Module】,此时程序就跑起来了

如果是第一次敲代码,程序无法正常跑起来,可能是以下几个问题:

  • 代码中的符号是否全是英文符号;
  • 缩进是否正确
  • 函数的拼写是否正确

二、基础语法

2.1 print()

        print()函数是python中常见的函数之一,它可以用来把编写者想要表达的东西打印到输出台上

print()

print() 函数输出:

  • ()内输出字符串时,必须加上单引号或双引号
  • 输出内容:数字、字符串、含有运算符的表达式
# 数字
>>> print(5201314)
5201314

# 字符串
>>> print("hello word")
hello word
>>> print('hello word')
hello word
>>> print(hello word) # 不加引号会报错 SyntaxError: invalid syntax
SyntaxError: invalid syntax
  • 输出目的地:控制台、文件
# 输出控制台
print('Leo 不懂代码')

# 输出文件
 fp = open('E:/test.txt') # 输出数据的路径 a+:如果文件存在则打开文件续写;如果文件不存在,则新建文件编写
 print('Leo不懂代码',file = fp)
 fp.close()
  • 输出样式:换行、不换行

2.2 dir(builtins)

        dir(builtins) 可以显示出来python中所有的内置函数

dir(__builtins__)
['ArithmeticError', 'AssertionError', 'AttributeError', 'BaseException', 'BlockingIOError', 'BrokenPipeError', 'BufferError', 'BytesWarning', 'ChildProcessError', 'ConnectionAbortedError', 'ConnectionError', 'ConnectionRefusedError', 'ConnectionResetError', 'DeprecationWarning', 'EOFError', 'Ellipsis', 'EnvironmentError', 'Exception', 'False', 'FileExistsError', 'FileNotFoundError', 'FloatingPointError', 'FutureWarning', 'GeneratorExit', 'IOError', 'ImportError', 'ImportWarning', 'IndentationError', 'IndexError', 'InterruptedError', 'IsADirectoryError', 'KeyError', 'KeyboardInterrupt', 'LookupError', 'MemoryError', 'ModuleNotFoundError', 'NameError', 'None', 'NotADirectoryError', 'NotImplemented', 'NotImplementedError', 'OSError', 'OverflowError', 'PendingDeprecationWarning', 'PermissionError', 'ProcessLookupError', 'RecursionError', 'ReferenceError', 'ResourceWarning', 'RuntimeError', 'RuntimeWarning', 'StopAsyncIteration', 'StopIteration', 'SyntaxError', 'SyntaxWarning', 'SystemError', 'SystemExit', 'TabError', 'TimeoutError', 'True', 'TypeError', 'UnboundLocalError', 'UnicodeDecodeError', 'UnicodeEncodeError', 'UnicodeError', 'UnicodeTranslateError', 'UnicodeWarning', 'UserWarning', 'ValueError', 'Warning', 'WindowsError', 'ZeroDivisionError', '__build_class__', '__debug__', '__doc__', '__import__', '__loader__', '__name__', '__package__', '__spec__', 'abs', 'all', 'any', 'ascii', 'bin', 'bool', 'breakpoint', 'bytearray', 'bytes', 'callable', 'chr', 'classmethod', 'compile', 'complex', 'copyright', 'credits', 'delattr', 'dict', 'dir', 'divmod', 'enumerate', 'eval', 'exec', 'exit', 'filter', 'float', 'format', 'frozenset', 'getattr', 'globals', 'hasattr', 'hash', 'help', 'hex', 'id', 'input', 'int', 'isinstance', 'issubclass', 'iter', 'len', 'license', 'list', 'locals', 'map', 'max', 'memoryview', 'min', 'next', 'object', 'oct', 'open', 'ord', 'pow', 'print', 'property', 'quit', 'range', 'repr', 'reversed', 'round', 'set', 'setattr', 'slice', 'sorted', 'staticmethod', 'str', 'sum', 'super', 'tuple', 'type', 'vars', 'zip']

标识符

        所谓标识符,就是变量、函数、属性、类、模块等可以由程序员指定名称的代码元素

构成标识符的字符均遵循一定的命名规则:

  • 区分大小写,Myname 与 myname 是两个不同的标识符
  • 首字符可以是字母、下划线_ 、但绝不可以是数字
  • 除首字母外的其他字符必须是下划线、字母和数字
  • 关键字不能作为标识符
  • 不要使用Python的内置函数作为自己的标识符

小知识:Python 3 的字符采用了双字节Unicode编码。Unicode编码被称作为统一编码制,包含了亚洲文字编码,例如中文、日文、韩文等字符

注:Unicode是国际组织制定的可以容纳世界上所有文字和符号的字符编码方案

关键字

        关键字是由语言本身定义好的有特殊含义的代码元素

        Python 中共有33个关键字,其中False、None、True的首字母大写,其他关键字全部小写

import keyword # 导入关键词的包
print(keyword.kwlist)

关键字

False

None

True

and

as

assert

break

class

continue

def

del

elif

else

except

finally

for

from

global

if

import

in

is

lambda

nonlocal

not

or

pass

raise

return

try

while

with

yield

变量

        顾名思义,变量就是一个名字,一个标签

        在Python中,为一个变量赋值的同时,就声明了该变量,该变量的数据类型就是赋值数据所属的类型,该变量还可以接收其他类型的数据

  •  特性:
  1. 变量最终打印的值,为最后一次赋予它的值(最后一次赋值之前的值被称为:内存垃圾)

  1. 两个变量之间可以相互赋值

  • 在Java和C语言中,变量声明为一种数据类型后,就不能接收其他类型的数据了
  • 但是在Python中,可以保存其他类型的数据

语句

        Python代码是由关键字、标识符、表达式和语句等构成的,语句是代码的重要组成部分。在Python中,一行代码表示着一条语句,在一般情况下,语句结束时不用加分号 ";".

greeting = "Hello word"
student_score = 0.0;  # 语句结束的时候可以加分号,但是不符合Python的编码规范
a = b  = c = 10  # Python链式赋值语句可以同时给多个变量赋相同的数值

转义字符

        Python中的字符串还支持转义字符。所谓转义字符是指使用反斜杠 ” \ “ 对一些特殊字符进行转义

转义字符

说明

\

续行符

\n

换行符

\0

\t

水平制表符(用于横向跳到下一个制表位)

\"

双引号

\'

单引号

\\

一个反斜杠

\f

换页

\0dd

八进制数,dd代表字符(\012代表换行)

\xhh

十六进制数,hh代表字符(\x0a代表换行)

反斜杠在一行的代码末尾,代表着这行代码执行了之后还没有结束,需要在继续执行后面的代码

字符串

        字符串主要的编写方式有以下三种

  • single quotes:使用单引号将文本包裹起来
print('Leo不懂代码')
  • Double quotes:使用双引号将文本包裹起来
print("但是Leo愿意去学")
  • Triple quotes:使用三引号将文本包裹起来
""" 
床前明月光,疑是地上霜。 
举头望明月,低头思故乡。 
"""

三、小游戏讲解

"""用Pyhon设置的第一个游戏"""  # 只是对代码的注释,无特殊含义

temp = input("不妨猜一下Leo现在心里面想的是哪个数字:") # temp 是一个变量,input()函数,用于接收用户的输入,拿到用户输入的值之后,与左侧的temp变量名进行挂钩
guess = int(temp) # 此时,获取到用户输入的值,是一个str类型的,我们需要把他转换成int类型(只能转换整数)

if guess == 8: # 这里用到了比较运算符 == 和 条件语句 if else
    print("你是我肚子里面的蛔虫吗?") # 该条件是当满足条件语句的时候,程序继续往下运行
    print("猜中了也没奖励!!!")
else:
 # 该代码是,当条件不满足条件语句的时候从此处代码继续往下运行,当条件满足时,会跳过该行及相关代码,直接往下运行 
    print("猜错啦,Leo我现在心里面想的是8!")

print("游戏结束,不玩啦~") # 程序的最后一行代码,用于结尾

下面是小游戏的优化:

  • 当用户猜错的时候,应该给出相应的提示
"""用Pyhon设置的第一个游戏"""  # 只是对代码的注释,无特殊含义

    temp = input("不妨猜一下Leo现在心里面想的是哪个数字:") # temp 是一个变量,input()函数,用于接收用户的输入,拿到用户输入的值之后,与左侧的temp变量名进行挂钩
    guess = int(temp) # 此时,获取到用户输入的值,是一个str类型的,我们需要把他转换成int类型(只能转换整数)
    
    if guess == 8: # 这里用到了比较运算符 == 和 条件语句 if else
        print("你是我肚子里面的蛔虫吗?") # 该条件是当满足条件语句的时候,程序继续往下运行
        print("猜中了也没奖励!!!")
                                         
    else:
 # 该代码是,当条件不满足条件语句的时候从此处代码继续往下运行,当条件满足时,会跳过该行及相关代码,直接往下运行 
        if guess < 8: # 嵌套if语句
            print("不对,你输入的值小了")
        else:
            print("不对,你输入的值大了")        

print("游戏结束,不玩啦~") # 程序的最后一行代码,用于结尾
  • 应该提供多次机会给用户
"""用Pyhon设置的第一个游戏"""  # 只是对代码的注释,无特殊含义

counts = 3 # 设置一个变量

while counts > 0:  # while循环语句
    temp = input("不妨猜一下Leo现在心里面想的是哪个数字:") # temp 是一个变量,input()函数,用于接收用户的输入,拿到用户输入的值之后,与左侧的temp变量名进行挂钩
    guess = int(temp) # 此时,获取到用户输入的值,是一个str类型的,我们需要把他转换成int类型(只能转换整数)
    
    if guess == 8: # 这里用到了比较运算符 == 和 条件语句 if else
        print("你是我肚子里面的蛔虫吗?") # 该条件是当满足条件语句的时候,程序继续往下运行
        print("猜中了也没奖励!!!")
        break # while循环语句的搭档,用于跳出同层的循环语句
    else:
 # 该代码是,当条件不满足条件语句的时候从此处代码继续往下运行,当条件满足时,会跳过该行及相关代码,直接往下运行 
        if guess < 8: # 嵌套语句
            print("不对,你输入的值小了")
        else:
            print("不对,你输入的值大了")
    counts = counts - 1 # 当每执行一次后,自动给counts-1,相当于游戏人物的  “血量”               

print("游戏结束,不玩啦~") # 程序的最后一行代码,用于结尾
  • 每次运行程序的时候,答案应该是随机的
"""用Pyhon设置的第一个游戏"""  # 只是对代码的注释,无特殊含义
import random # 导入random(随机数)模块,生成一个伪随机数

counts = 3
answer = random.randint(1,10)

while counts > 0:  # while循环语句
    temp = input("不妨猜一下Leo现在心里面想的是哪个数字:") # temp 是一个变量,input()函数,用于接收用户的输入,拿到用户输入的值之后,与左侧的temp变量名进行挂钩
    guess = int(temp) # 此时,获取到用户输入的值,是一个str类型的,我们需要把他转换成int类型(只能转换整数)
    
    if guess == answer: # 这里用到了比较运算符 == 和 条件语句 if else
        print("你是我肚子里面的蛔虫吗?") # 该条件是当满足条件语句的时候,程序继续往下运行
        print("猜中了也没奖励!!!")
        break # while循环语句的搭档,用于跳出同层的循环语句
    else:
 # 该代码是,当条件不满足条件语句的时候从此处代码继续往下运行,当条件满足时,会跳过该行及相关代码,直接往下运行 
        if guess < answer: # 嵌套语句
            print("不对,你输入的值小了")
        else:
            print("不对,你输入的值大了")
    counts = counts - 1                

print("游戏结束,不玩啦~") # 程序的最后一行代码,用于结尾

以下内容看不懂也没关系,因为在我写这篇文档的时候,我也看不懂,哈哈哈~

随机数也可以进行重现!!!

random.getstate():随机数的内部状态

random.randint():设置随机数的范围

random.setstate():重现随机数

x = random.getstate() # 将随机数的内部状态保存到 x 当中
random.randint(1,10) # 任意生成三个随机数
4
random.randint(1,10)
1
random.randint(1,10)
7
random.setstate(X) # 重现随机数
random.randint(1,10)
4
random.randint(1,10)
1
random.randint(1,10)
7
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值