Python基础语法-菜鸟教程-第2章:python基础语法

学习网址:https://www.runoob.com/python/python-basic-syntax.html
运行代码后即可生成笔记

疑惑点:命令行参数getopt模块的使用没搞懂,有疑问

#代码如下:

# -*- coding: utf-8 -*-

import keyword
import sys
import getopt

# chapter2:python基础语法
print("\nchapter2:python基础语法\n")
print("1.编码")
print("1)默认情况下,Python 3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串。 当然你也可以为源码文件指定不同的编码")
print("2)格式:# -*- coding: cp-1252 -*-")
print("2.标识符")
print("1)第一个字符必须是字母表中字母或下划线 _ 。")
print("2)标识符的其他的部分由字母、数字和下划线组成。")
print("3)标识符对大小写敏感。")
print("4)在 Python 3 中,可以用中文作为变量名,非 ASCII 标识符也是允许的了。")
print("3.python保留字")
print("保留字即关键字,我们不能把它们用作任何标识符名称。Python 的标准库提供了一个 keyword 模块,可以输出当前版本的所有关键字:")
print("eg:print(keyword.kwlist)的结果为:")
print(keyword.kwlist)
print("4.注释")
print("1)单行注释:Python中单行注释以 # 开头")
print("2)多行注释:多行注释可以用多个 # 号,还有 ''' 和 \"\"\"")
print("eg:")
print("\'\'\'\n第一行注释\n第二行注释\n第三行注释\n\'\'\'")
print("5.缩进")
print("1)python最具特色的就是使用缩进来表示代码块,不需要使用大括号 {} 。")
print("2)缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数。")
print("6.多行语句")
print("1)Python 通常是一行写完一条语句,但如果语句很长,我们可以使用反斜杠(\)来实现多行语句")
print("eg:")
print("total = item_one + " + "\\\n" + "item_two + " + "\\\n" + "item_one")
print("2)在 [], {}, 或 () 中的多行语句,不需要使用反斜杠(\)")
print("eg:")
print("total = ['item_one', 'item_two', 'item_three',\n" + "'item_four', 'item_five']")
print("7.数字(Number)类型:python中数字有四种类型:整数、布尔型、浮点数和复数。")
print("1)int (整数), 如 1, 只有一种整数类型 int,表示为长整型,没有 python2 中的 Long。")
print("2)bool (布尔), 如 True。")
print("3)float (浮点数), 如 1.23、3E-2")
print("4)complex (复数), 如 1 + 2j、 1.1 + 2.2j")
print("8.字符串")
print("1)python中单引号和双引号使用完全相同。")
print("2)使用三引号(\'\'\'或\"\"\")可以指定一个多行字符串。")
print("3)转义符 '\\'")
print("4)反斜杠可以用来转义,使用r可以让反斜杠不发生转义。。 如 r\"this is a line with \\n\" :结果,\\n会显示,并不是换行。")
print("5)按字面意义级联字符串,如\"this \" \"is \" \"string\"会被自动转换为this is string。")
print("6)字符串可以用 + 运算符连接在一起,用 * 运算符重复。")
print("eg:print(\"str \"*5)的结果为:"+"str "*5)
print("7)Python 中的字符串有两种索引方式,从左往右以 0 开始,从右往左以 -1 开始。")
print("8)Python中的字符串不能改变。")
print("9)Python 没有单独的字符类型,一个字符就是长度为 1 的字符串。")
print("10)字符串的截取的语法格式如下:变量[头下标:尾下标:步长]")
print("9.空行")
print("1)函数之间或类的方法之间用空行分隔,表示一段新的代码的开始。类和函数入口之间也用一行空行分隔,以突出函数入口的开始。")
print("2)空行与代码缩进不同,空行并不是Python语法的一部分。书写时不插入空行,Python解释器运行也不会出错。但是空行的作用在于分隔两段不同功能或含义的代码,便于日后代码的维护或重构。")
print("3)空行也是程序代码的一部分。")
print("10.等待用户输入")
print("eg:执行下面的程序在按回车键后就会等待用户输入:")
print("input(\"\\n\\n按下 ctrl 键后退出。\")")
print("以上代码中 ,\"\\n\\n\"在结果输出前会输出两个新的空行。一旦用户按下 enter 键时,程序将退出。")
print("11.同一行显示多条语句")
print("1)Python可以在同一行中使用多条语句,语句之间使用分号(;)分割,以下是一个简单的实例:")
print("eg:import sys; x = 'runoob'; sys.stdout.write(x + \'\\n\')的输出结果为:")
import sys; x = 'runoob'; sys.stdout.write(x + '\n')
print("11.print输出")
print("1)print 默认输出是换行的,如果要实现不换行需要在变量末尾加上 end=\"\"")
print("eg:有如下实例:")
print("#!/usr/bin/python3\n\n" + \
      "x=\"a\"\n" + \
      "y=\"b\"\n" + \
      "# 换行输出\n" + \
      "print( x )\n" + \
      "print( y )\n\n" + \
      "print('---------')\n" + \
      "# 不换行输出\n" + \
      "print( x, end=" " )\n" + \
      "print( y, end=" " )\n" + "print()")

# !/usr/bin/python3
print("以上实例执行结果为:")
x = "a"
y = "b"
# 换行输出
print(x)
print(y)

print('---------')
# 不换行输出
print(x, end=" ")
print(y, end=" ")
print()
print("12.import和from import:在 python 用 import 或者 from...import 来导入相应的模块。")
print("1)将整个模块(somemodule)导入,格式为: import somemodule")
print("2)从某个模块中导入某个函数,格式为: from somemodule import somefunction")
print("3)从某个模块中导入多个函数,格式为: from somemodule import firstfunc, secondfunc, thirdfunc")
print("4)将某个模块中的全部函数导入,格式为: from somemodule import *")
print("5)导入sys模块:import sys")
print("6)导入 sys 模块的 argv,path 成员:from sys import argv,path  #  导入特定的成员")
print("13.命令行参数")
print("1)很多程序可以执行一些操作来查看一些基本信息,Python可以使用-h参数查看各参数帮助信息:")
print("2)我们在使用脚本形式执行 Python 时,可以接收命令行输入的参数")
print("(1)Python 提供了 getopt 模块来获取命令行参数。")
print("[1]getopt模块是专门处理命令行参数的模块,用于获取命令行选项和参数,也就是sys.argv。命令行选项使得程序的参数更加灵活。支持短选项模式(-)和长选项模式(--)。")
print("[2]该模块提供了两个方法及一个异常处理来解析命令行参数。")
print("[3]getopt.getopt 方法用于解析命令行参数列表,语法格式为:getopt.getopt(args, options[, long_options])")
print(".args: 要解析的命令行参数列表。")
print(".options: 以字符串的格式定义,options后的冒号(:)表示该选项必须有附加的参数,不带冒号表示该选项不附加参数。")
print(".long_options: 以列表的格式定义,long_options 后的等号(=)表示如果设置该选项,必须有附加的参数,否则就不附加参数。")
print(".该方法返回值由两个元素组成: 第一个是 (option, value) 元组的列表。 第二个是参数列表,包含那些没有'-'或'--'的参数。")
print("[4]另外一个方法是 getopt.gnu_getopt")
print("[5]Exception getopt.GetoptError:在没有找到参数列表,或选项的需要的参数为空时会触发该异常,异常的参数是一个字符串,表示错误的原因。属性 msg 和 opt 为相关选项的错误信息。")
print("(2)Python 中也可以所用 sys 的 sys.argv 来获取命令行参数")
print("[1]sys.argv 是命令行参数列表")
print("[2]len(sys.argv) 是命令行参数个数")
print("[3]sys.argv[0] 表示脚本名")
print("eg:有如下实例(文件名为test.py):\n")
print("#脚本test.py的内容" + \
      "import sys\n" + \
      "print ('参数个数为:', len(sys.argv), '个参数。')\n" + \
      "print ('参数列表:', str(sys.argv))\n" + \
      "#运行脚本test.py\n"
      "python3 test.py arg1 arg2 arg3\n")
print("脚本test.py的执行结果为:")

print("参数个数为: 4 个参数。\n" + \
      "参数列表: ['test.py', 'arg1', 'arg2', 'arg3']")


#运行结果:
chapter2:python基础语法

1.编码
1)默认情况下,Python 3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串。 当然你也可以为源码文件指定不同的编码
2)格式:# -- coding: cp-1252 --
2.标识符
1)第一个字符必须是字母表中字母或下划线 _ 。
2)标识符的其他的部分由字母、数字和下划线组成。
3)标识符对大小写敏感。
4)在 Python 3 中,可以用中文作为变量名,非 ASCII 标识符也是允许的了。
3.python保留字
保留字即关键字,我们不能把它们用作任何标识符名称。Python 的标准库提供了一个 keyword 模块,可以输出当前版本的所有关键字:
eg: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’]
4.注释
1)单行注释:Python中单行注释以 # 开头
2)多行注释:多行注释可以用多个 # 号,还有 ‘’’ 和 “”"
eg:
‘’’
第一行注释
第二行注释
第三行注释
‘’’
5.缩进
1)python最具特色的就是使用缩进来表示代码块,不需要使用大括号 {} 。
2)缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数。
6.多行语句
1)Python 通常是一行写完一条语句,但如果语句很长,我们可以使用反斜杠()来实现多行语句
eg:
total = item_one +
item_two +
item_one
2)在 [], {}, 或 () 中的多行语句,不需要使用反斜杠()
eg:
total = [‘item_one’, ‘item_two’, ‘item_three’,
‘item_four’, ‘item_five’]
7.数字(Number)类型:python中数字有四种类型:整数、布尔型、浮点数和复数。
1)int (整数), 如 1, 只有一种整数类型 int,表示为长整型,没有 python2 中的 Long。
2)bool (布尔), 如 True。
3)float (浮点数), 如 1.23、3E-2
4)complex (复数), 如 1 + 2j、 1.1 + 2.2j
8.字符串
1)python中单引号和双引号使用完全相同。
2)使用三引号(’’'或""")可以指定一个多行字符串。
3)转义符 ‘’
4)反斜杠可以用来转义,使用r可以让反斜杠不发生转义。。 如 r"this is a line with \n" :结果,\n会显示,并不是换行。
5)按字面意义级联字符串,如"this " “is " “string"会被自动转换为this is string。
6)字符串可以用 + 运算符连接在一起,用 * 运算符重复。
eg:print(“str “*5)的结果为:str str str str str
7)Python 中的字符串有两种索引方式,从左往右以 0 开始,从右往左以 -1 开始。
8)Python中的字符串不能改变。
9)Python 没有单独的字符类型,一个字符就是长度为 1 的字符串。
10)字符串的截取的语法格式如下:变量[头下标:尾下标:步长]
9.空行
1)函数之间或类的方法之间用空行分隔,表示一段新的代码的开始。类和函数入口之间也用一行空行分隔,以突出函数入口的开始。
2)空行与代码缩进不同,空行并不是Python语法的一部分。书写时不插入空行,Python解释器运行也不会出错。但是空行的作用在于分隔两段不同功能或含义的代码,便于日后代码的维护或重构。
3)空行也是程序代码的一部分。
10.等待用户输入
eg:执行下面的程序在按回车键后就会等待用户输入:
input(”\n\n按下 ctrl 键后退出。”)
以上代码中 ,”\n\n"在结果输出前会输出两个新的空行。一旦用户按下 enter 键时,程序将退出。
11.同一行显示多条语句
1)Python可以在同一行中使用多条语句,语句之间使用分号(;)分割,以下是一个简单的实例:
eg:import sys; x = ‘runoob’; sys.stdout.write(x + ‘\n’)的输出结果为:
runoob
11.print输出
1)print 默认输出是换行的,如果要实现不换行需要在变量末尾加上 end=”"
eg:有如下实例:
#!/usr/bin/python3

x=“a”
y=“b”

换行输出

print( x )
print( y )

print(’---------’)

不换行输出

print( x, end= )
print( y, end= )
print()
以上实例执行结果为:
a
b

a b
12.import和from import:在 python 用 import 或者 from…import 来导入相应的模块。
1)将整个模块(somemodule)导入,格式为: import somemodule
2)从某个模块中导入某个函数,格式为: from somemodule import somefunction
3)从某个模块中导入多个函数,格式为: from somemodule import firstfunc, secondfunc, thirdfunc
4)将某个模块中的全部函数导入,格式为: from somemodule import *
5)导入sys模块:import sys
6)导入 sys 模块的 argv,path 成员:from sys import argv,path # 导入特定的成员
13.命令行参数
1)很多程序可以执行一些操作来查看一些基本信息,Python可以使用-h参数查看各参数帮助信息:
2)我们在使用脚本形式执行 Python 时,可以接收命令行输入的参数
(1)Python 提供了 getopt 模块来获取命令行参数。
[1]getopt模块是专门处理命令行参数的模块,用于获取命令行选项和参数,也就是sys.argv。命令行选项使得程序的参数更加灵活。支持短选项模式(-)和长选项模式(–)。
[2]该模块提供了两个方法及一个异常处理来解析命令行参数。
[3]getopt.getopt 方法用于解析命令行参数列表,语法格式为:getopt.getopt(args, options[, long_options])
.args: 要解析的命令行参数列表。
.options: 以字符串的格式定义,options后的冒号(:)表示该选项必须有附加的参数,不带冒号表示该选项不附加参数。
.long_options: 以列表的格式定义,long_options 后的等号(=)表示如果设置该选项,必须有附加的参数,否则就不附加参数。
.该方法返回值由两个元素组成: 第一个是 (option, value) 元组的列表。 第二个是参数列表,包含那些没有’-‘或’–'的参数。
[4]另外一个方法是 getopt.gnu_getopt
[5]Exception getopt.GetoptError:在没有找到参数列表,或选项的需要的参数为空时会触发该异常,异常的参数是一个字符串,表示错误的原因。属性 msg 和 opt 为相关选项的错误信息。
(2)Python 中也可以所用 sys 的 sys.argv 来获取命令行参数
[1]sys.argv 是命令行参数列表
[2]len(sys.argv) 是命令行参数个数
[3]sys.argv[0] 表示脚本名
eg:有如下实例(文件名为test.py):

#脚本test.py的内容import sys
print (‘参数个数为:’, len(sys.argv), ‘个参数。’)
print (‘参数列表:’, str(sys.argv))
#运行脚本test.py
python3 test.py arg1 arg2 arg3

脚本test.py的执行结果为:
参数个数为: 4 个参数。
参数列表: [‘test.py’, ‘arg1’, ‘arg2’, ‘arg3’]

发布了25 篇原创文章 · 获赞 0 · 访问量 225

猜你喜欢

转载自blog.csdn.net/qq_33410995/article/details/104146229