Python基础(一)Python3 基础语法:编码、标识符、关键字、注释、行与缩进、print输出、模块、包、命令行参数、数据结构

本文全面介绍了Python编程的基础知识,涵盖编码、标识符、关键字、注释、行与缩进、print输出、模块、包、命令行参数及数据结构等内容。详细讲解了Python的语法特性,如如何使用UTF-8编码、定义标识符、使用关键字和注释,以及Python的流程控制和数据操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

 

目录

一、编码

二、标识符 

三、关键字

四、注释

4.1、单行注释    #

4.2、多行注释用 '''或"""

4.3、注释/取消注释快捷键 Ctrl + /

五、行与缩进 

六、print输出

七、模块

7.1、简介

7.2、import

7.3、from...import

7.4、__name__属性

八、包

九、命令行参数

十、数据结构


参考http://www.shareblogs.top/213/

一、编码

     默认情况下,Python 3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串,可以显示所有的语言,包括中文等等。

二、标识符 

  • 第一个字符必须是字母表中字母或下划线 _ 。
  • 标识符的其他的部分由字母、数字和下划线组成。
  • 标识符对大小写敏感,比如:

三、关键字

      用下面的这行代码,可以检索出Python语言的常用关键字:

['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、单行注释    #

4.2、多行注释用 '''或"""

4.3、注释/取消注释快捷键 Ctrl + /

五、行与缩进 

       使用缩进来表示代码块,不需要使用大括号 {},每行末尾可以不用分号结束

正确的表示:

if True:
    print("true1")
    print("true2");
if True:
    print("false1")
    print("false2")

错误的表示1(缩进错误):

错误的表示2(缩进错误): 

if True:
    print("true1")
    print("true2");
if True:
    print("true3")
print("true4") # 出错
else:
    print("false1")
    print("false2")

错误的表示3(缩进错误): 

if True:
    print("true1")
    print("true2");
if True:
    print("true3")
    print("true4")
else:
    print("false1")
  print("false2")# 出错

六、print输出

x = 'a'; # 可以保留分号。一般不用分号。
y = "b"
print('-----换行输出----')
print(x)
print(y)

print('-----不换行输出----')
print(x, end=" ")
print(y, end=" ")
print()

输出结果:

-----换行输出----
a
b
-----不换行输出----
a b 

七、模块

7.1、简介

  • 模块——是一个包含所有你定义的函数和变量的文件,其后缀名是.py文件。比如import sys的sys实际上就是sys.py文件。python 标准库的方法,就是用模块来表示。
  • 标准模块——Python 本身带着一些标准的模块库,有些模块直接被构建在解析器里,这些虽然不是一些语言内置的功能,但是他却能很高效的使用,甚至是系统级调用也没问题。

比如下面

import sys
 
print('命令行参数如下:')
for i in sys.argv:
   print(i)
 
print('\n\nPython 路径为:', sys.path, '\n')

输出结果:

C:\Users\lanmage2\test1\Scripts\python.exe F:/百度云同步盘/我的学习/18、python/test1/View/flie2.py
命令行参数如下:
F:/百度云同步盘/我的学习/18、python/test1/View/flie2.py


Python 路径为: ['F:\\百度云同步盘\\我的学习\\18、python\\test1\\View', 'F:\\百度云同步盘\\我的学习\\18、python\\test1', 'D:\\Program Files\\JetBrains\\PyCharm 2019.1.2\\helpers\\pycharm_display', 'C:\\Users\\lanmage2\\AppData\\Local\\Programs\\Python\\Python37\\python37.zip', 'C:\\Users\\lanmage2\\AppData\\Local\\Programs\\Python\\Python37\\DLLs', 'C:\\Users\\lanmage2\\AppData\\Local\\Programs\\Python\\Python37\\lib', 'C:\\Users\\lanmage2\\AppData\\Local\\Programs\\Python\\Python37', 'C:\\Users\\lanmage2\\test1', 'C:\\Users\\lanmage2\\test1\\lib\\site-packages', 'C:\\Users\\lanmage2\\test1\\lib\\site-packages\\setuptools-40.8.0-py3.7.egg', 'C:\\Users\\lanmage2\\test1\\lib\\site-packages\\pip-19.0.3-py3.7.egg', 'D:\\Program Files\\JetBrains\\PyCharm 2019.1.2\\helpers\\pycharm_matplotlib_backend'] 


Process finished with exit code 0

其中

  • import sys 引入 python 标准库中的 sys.py 模块;这是引入某一模块的方法。
  • sys.argv 是一个包含命令行参数的列表。
  • sys.path 包含了一个 Python 解释器自动查找所需模块的路径的列表。

7.2、import

  • 将整个模块(somemodule)导入,格式为: import somemodule
  • 通过定义环境变量的方式来确定搜索somemodule的路径
import sys
print('sys.path = \n', sys.path)
print('sys.path[0] = \n', sys.path[0])
print('sys.path[1] = \n', sys.path[1])
print('sys.argv = \n', sys.argv)
print('sys.argv[0] = \n', sys.argv[0])

     输出结果:

   此外,A模块导入B模块(相当于C#、C++的一个类调用另个类),可以参考:

https://blog.youkuaiyun.com/winycg/article/details/78512300

      但是,很多人不能成功导入。我也是不能导入:

      不知道为啥,可能需要注意其他问题,请参考:

https://bbs.youkuaiyun.com/topics/391007414#new_post

     于是,我把FileThree.py拷贝到 解释的目录 'C:\Users\lanmage2\AppData\Local\Programs\Python\Python37',就可以了。

请看:

FileOne.py或FileThree.py:

# 斐波那契(fibonacci)数列模块

def fib(n):  # 定义到 n 的斐波那契数列
        a, b = 0, 1
        while b < n:
                print(b, end=' ')
                a, b = b, a + b
        print()


def fib2(n):  # 返回到 n 的斐波那契数列
        result = []
        a, b = 0, 1
        while b < n:
                result.append(b)
                a, b = b, a + b
        return result

FileTwo.py:

import sys
print(sys.path)
print("-----------------一个模块导入另一个模块(相当于类与类之间的调用)-------------------")
# import FileOne  # FileOne.py放在 'F:\\百度云同步盘\\我的学习\\18、python\\test1\\View',就不能导入模块。
import FileThree  # 但是,我把FileThree.py拷贝到 解释器的目录 'C:\Users\lanmage2\AppData\Local\Programs\Python\Python37',就可以了。
FileThree.fib(10)

输出结果:

C:\Users\lanmage2\test1\Scripts\python.exe F:\百度云同步盘\我的学习\18、python\test1\View\FileTwo.py
['F:\\百度云同步盘\\我的学习\\18、python\\test1\\View', 'F:\\百度云同步盘\\我的学习\\18、python\\test1', 'D:\\Program Files\\JetBrains\\PyCharm 2019.1.2\\helpers\\pycharm_display', 'C:\\Users\\lanmage2\\AppData\\Local\\Programs\\Python\\Python37\\python37.zip', 'C:\\Users\\lanmage2\\AppData\\Local\\Programs\\Python\\Python37\\DLLs', 'C:\\Users\\lanmage2\\AppData\\Local\\Programs\\Python\\Python37\\lib', 'C:\\Users\\lanmage2\\AppData\\Local\\Programs\\Python\\Python37', 'C:\\Users\\lanmage2\\test1', 'C:\\Users\\lanmage2\\test1\\lib\\site-packages', 'C:\\Users\\lanmage2\\test1\\lib\\site-packages\\setuptools-40.8.0-py3.7.egg', 'C:\\Users\\lanmage2\\test1\\lib\\site-packages\\pip-19.0.3-py3.7.egg', 'D:\\Program Files\\JetBrains\\PyCharm 2019.1.2\\helpers\\pycharm_matplotlib_backend']
-----------------一个模块导入另一个模块(相当于类与类之间的调用)-------------------
1 1 2 3 5 8 

Process finished with exit code 0

7.3、from...import

  • 从某个模块中导入某个函数,格式为: from somemodule import somefunction
  • 从某个模块中导入多个函数,格式为: from somemodule import firstfunc, secondfunc, thirdfunc
  • 将某个模块中的全部函数导入,格式为: from somemodule import *

7.4、__name__属性

       如果我们想在模块被引入时,模块中的某一程序块不执行,我们可以用__name__属性来使该程序块仅在该模块自身运行时执行。

if __name__ == '__main__':
   print('模块这里执行')
else:
   print('给他其他模块调用,其他模块在这里执行')

八、包

  • Python 中,多个模块组成一个包。比如一个模块的名称是 A.B, 那么他表示一个包 A中的子模块 B 。
  • 优点——正如模块与模块之间的函数可以重名,包与包的函数也可以重名。提升效率、避免了命名冲突。
  • Python 会根据 sys.path 中的目录来寻找这个包中包含的子目录。目录只有包含一个叫做 __init__.py 的文件才会被认作是一个包。
  • 包的导入方式,和模块的导入方式类似。具体参考https://www.runoob.com/python3/python3-module.html

九、命令行参数

后期完善

https://www.runoob.com/python3/python3-basic-syntax.html

十、数据结构

https://www.runoob.com/python3/python3-data-structure.html(这篇博客重点说了列表,可以当做堆栈使用、当作队列使用。其他内容什么用)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我爱AI

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值