• 《笨办法学Python》 第12课手记


    《笨办法学Python》 第12课手记

    本节课接着讲raw_input这个函数,其后面的括号里的字符串可以显示在屏幕上。

    原代码如下:

    age = raw_input("How old are you? ")
    height = raw_input("How tall are you? ")
    weight = raw_input("How much do you weight? ")
    
    print "So,you're %r old, %r tall and %r heavy." %(
        age,height,weight)

    请注意最后一行,age前必须空一格,表示该行代码是上一行的一部分。

    代码中age、height、weight都是变量名,使用raw_input输入数据后,就立即给这些变量赋值,同时把输入的以字符串显示在显示器上。再使用格式化字符%r将其混合字符输出。

    Python语法简洁清晰,特色之一是强制用空白符(white space)作为语句缩进。

    结果如下:

    这里写图片描述

    有趣的是这个结果与书上的结果有些偏差,书上前三行语句和数据之间都有空格而该结果没有。

    再看一个结果:

    这里写图片描述

    空格出现了,代码并没有改变,空格是在输入数据的时候打进去的,也就是说使用raw_input时,如果输入的第一个数据是空格(空格是一个字符型的数据)的话,解释器将忽视空格录入空格后的内容。

    本节课涉及的知识:

    记住 %r 是 debug 专用,它显示的是原始表示出来的字符,而 %s 是为了显示给用户。前面也说过多次了一定要牢记。

    在加分题里,有如下代码:

     python -m pydoc raw_input 

    结果如下:
    这里写图片描述

    pydoc是Python自带的模块,主要用于从python模块中自动生成文档,这些文档可以基于文本呈现的、也可以生成WEB 页面的,还可以在服务器上以浏览器的方式呈现,也可以使用pydoc命令查看函数介绍。

    这段代码的意思就是查看函数raw_input的介绍。(上一节已经用中文介绍过了,这里不再赘述)

    ->string表示的是这个函数处理的是字符串。该行下面英文的翻译如下:
    从标准输入中读取一个字符串。 跟在后面的新的一行将会被剔除。
    如果用户输入了文字流结尾命令,(Unix中是ctrl+D,windows是ctrl+z+return),就报错
    (EOFError)。
    在Unix中,GNU readline将会被使用(如果可用的话)。至于提示字符串,如果给出了,就在读取后面的新字符串之前打印出来。

    EOF是endoffile的缩写,表示”文字流”(stream)的结尾。这里的”文字流”,可以是文件(file),也可以是标准输入(stdin)

    至于Unix(windows和linux系统的核心)和GNU readline(GNU readline是一个开源的跨平台程序库,提供了交互式的文本编辑功能)我需要学习过操作系统这门课程才能解释,在在这里做个标记,日后再补充。

  • 相关阅读:
    C#中的int、long、float、double等类型都占多少个字节的内存
    Bit 存储操作代码碎片
    unity文件写入与读取
    unity调用系统剪切板功能
    LayerMask小结
    NGUI中获取鼠标在控件内部坐标
    【Unity技巧】Unity中的优化技术
    工程源码目录
    Unity3D_NGUI_性能优化实践_CPU卡顿
    Unity3d:UI面板管理整合进ToLua
  • 原文地址:https://www.cnblogs.com/wanghongze95/p/13842711.html
Copyright © 2020-2023  润新知