• Python基础之变量、输入、输出


    一、Hello World程序

    在Windows终端执行python

    C:Users
    enyz02>python
    Python 3.7.3 (v3.7.3:ef4ec6ed12, Mar 25 2019, 22:22:05) [MSC v.1916 64 bit (AMD64)] on win32
    Type "help", "copyright", "credits" or "license" for more information.
    >>> print("Hello World")
    Hello World

    二、变量和字符编码

    程序是用来处理数据的,而变量是用来存储数据的

    1、声明变量(变量的赋值)

    name = "ren"
    print("name")

    变量名为:name,变量name的值为:“ren”

    2、变量定义的规则

    (1)变量名只能是字母、数字、下划线的任意组合

    (2)变量名的第一个字符不能是数字

    (3)关键字不能声明为变量名

    3、命名

    (1)见名知意
      起一个有意义的名字,尽量做到看一眼就知道是什么意思(提高代码可读性) 比如:名字就定义为 name , 定义学生用 student
    (2)驼峰命名法
      小驼峰式命名法(lower camel case): 第一个单词以小写字母开始;第二个单词的首字母大写,例如:myName、aDog
      大驼峰式命名法(upper camel case): 每一个单字的首字母都采用大写字母,例如:FirstName、LastName
      不过在程序员中还有一种命名法比较流行,就是用下划线“_”来连接所有的单词,比如send_buf,last_name
      Python推荐就是用下划线“_”来连接所有的单词

    4、关键字

      Python一些具有特殊功能的标识符,这就是所谓的关键字.

      关键字,是Python已经使用的了,所以不允许开发者自己定义和关键字相同的名字的标识符。

      可以通过以下命令进行查看当前系统中python的关键字

    import keyword
    print(keyword.kwlist)
    ['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', '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']

    5、字符编码

      python解释器在加载 .py 文件中的代码时,会对内容进行编码(默认ascill)

      ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其最多只能用 8 位来表示(一个字节),即:2**8 = 256-1,所以,ASCII码最多只能表示 255 个符号。

      显然ASCII码无法将世界上的各种文字和符号全部表示,所以,就需要新出一种可以代表所有字符和符号的编码,即:Unicode

      Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,规定虽有的字符和符号最少由 16 位来表示(2个字节),即:2 **16 = 65536,
    注:此处说的的是最少2个字节,可能更多

      UTF-8,是对Unicode编码的压缩和优化,他不再使用最少使用2个字节,而是将所有的字符和符号进行分类:ascii码中的内容用1个字节保存、欧洲的字符用2个字节保存,东亚的字符用3个字节保存...

      python解释器在加载 .py 文件中的代码时,会对内容进行编码(默认ascill);应该显示的告诉python解释器用什么编码来执行源代码。

    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    # Author: Renyz

    6、注释

      单行注释:# 被注释的内容(Ctrl+/)

      多行注释:'''被注释的内容'''(三个单引号或三个双引号)

      同时多行字符串必须使用多引号('''字符串内容''')

    三、用户输入

    与用户交互(在屏幕上显示用户输入的内容)

    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    # Author: Renyz
    name = input("请输入您的名字:")
    passwd = input("请输入您的密码:")
    -----------------------------------------------------------------------------
    C:Users
    enyz02PycharmProjectsuntitledvenvScriptspython.exe C:/Users/renyz02/Desktop/py_test1/20190910/output.py
    请输入您的名字:ryz
    请输入您的密码:123
    
    Process finished with exit code 0

    输入密码时,如果想要密码不显示,可以使用getpass模块中的getpass方法:(该模块在pycharm中无法使用)

    (venv) C:Users
    enyz02Desktoppy_test1>ipython
    Python 3.7.3 (v3.7.3:ef4ec6ed12, Mar 25 2019, 22:22:05) [MSC v.1916 64 bit (AMD64)]
    Type 'copyright', 'credits' or 'license' for more information
    IPython 7.8.0 -- An enhanced Interactive Python. Type '?' for help.
    In [1]: import getpass
    IIn [2]: passwd = getpass.getpass("请输入密码:")
    请输入密码:
    In [3]: print(passwd)
    123

    四、输出函数

    1、简单的输出

    #打印提示
    print("Welcome to BeiJing")

    2、格式化输出

    程序中经常会有这样场景:要求用户输入信息,然后打印成固定的格式,所以需要用到格式化输出

    # -*- coding:utf-8 -*-
    # Author: Renyz
    name = input("name: ")
    age = int(input("age: "))#integer
    # print(type(age),type(str(age)))
    sex = input("sex: ")
    home_address = input("home_address: ")
    
    # 万恶的 “+” 也可以连接字符串,但效率太低,不建议使用
    # 建议使用前两种
    info = '''
    -------- info of %s --------
    Name:%s
    Age:%d
    Sex:%s
    Home_Address:%s
    '''%(name,name,age,sex,home_address)
    
    info2 = '''
    -------- info of {_name} --------
    Name:{_name}
    Age:{_age}
    Sex:{_sex}
    Home_Address:{_home_address}
    '''.format(_name=name,_age=age,_sex=sex,_home_address=home_address)
    
    info3 = '''
    -------- info of {0} --------
    Name:{0}
    Age:{1}
    Sex:{2}
    Home_Address:{3}
    '''.format(name,age,sex,home_address)
    
    print(info3)
    -------------------------------------------------------------------------
    C:Users
    enyz02PycharmProjectsuntitledvenvScriptspython.exe C:/Users/renyz02/PycharmProjects/untitled/day1/interaction.py
    name: ryz
    age: 26
    sex: male
    home_address: shanxi
    
    -------- info of ryz --------
    Name:ryz
    Age:26
    Sex:male
    Home_Address:shanxi

    %s :字符串占位符:可以接收字符串,也可接收数字
    %d :数字占位符:只能接收数字

    print('My name is %s,my age is %d' %('test',18))
    #注意:
    #print('My name is %s,my age is %d' %(name,age)) #age为字符串类型,无法传给%d,所以会报错

    扩展:

    end 关键字 关键字end可以用于将结果输出到同一行

    print("Hello,",end="")
    print("World",end="")
    ———————————————————————————————————
    Hello,World
    print("	Python")#	表示空四个字符,也称缩进,相当于按一下Tab键
    print("
    Python
    JAVA
    C++
    JavaScript
    C#")#
    表示换行,相当于按一下回车
    print("languages:
    	Python
    	JAVA
    	C++
    	JavaScript
    	C#")#
    	表示换行加每行空四格
    ----------------------------------------------------------------------
    C:Users
    enyz02PycharmProjectsuntitledvenvScriptspython.exe C:/Users/renyz02/Desktop/py_test1/20190910/output.py
        Python
    
    Python
    JAVA
    C++
    JavaScript
    C#
    languages:
        Python
        JAVA
        C++
        JavaScript
        C#

    3、换行输出( )

    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    # Author: Renyz
    name = "Python"
    age = 18
    print("My name is %s,
    My age is %d"%(name,age))
    -------------------------------------------------------------------
    C:Users
    enyz02PycharmProjectsuntitledvenvScriptspython.exe C:/Users/renyz02/Desktop/py_test1/20190910/output.py
    My name is Python,
    My age is 18
  • 相关阅读:
    tensorflow2.0 GPU和CPU 时间对比
    第一次使用FileZilla Server
    PremiumSoft Navicat 15 for Oracle中文破解版安装教程
    Unmapped Spring configuration files found. Please configure Spring facet or use 'Create Default Context' to add one including all unmapped files.
    ng : 无法加载文件 D: odejs ode_global g.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。
    angular
    Github上优秀的go项目
    win10---file explore 中remove quick access folder
    react--useEffect使用
    linux---cat 和 grep 的妙用
  • 原文地址:https://www.cnblogs.com/renyz/p/11497955.html
Copyright © 2020-2023  润新知