1.引言
在基础知识部分,主要涉及计算机和编程基本的一些内容。比如现代计算机结构体系,输入输出,变量,字符串,注释,命名规范等。
掌握了这些基础内容,基本上可以完成一些基本任务,体会一下编程的初级乐趣了。开始吧!
2.基础知识
2.1.现代计算机结构体系
现代计算机整体结构体系,是 冯·诺依曼 结构体系。像下面这个图:
你看到了,一台冯诺依曼机包括这些组成部分
- 输入设备:鼠标,键盘,扫描仪
- 输出设备:显示器,打印机,投影仪
- 存储器:寄存器,内存,磁盘,磁带,U盘,移动硬盘
- 运算器:cpu
- 控制器:cpu
2.2.输入与输出
2.2.1.交互式输入
交互式输入,指打开python交互式中断窗口,输入程序和指令执行。图示如下:
2.2.2.非交互式输入
非交互式输入,python内置了input函数,完成程序和指令的输入。图示如下:
2.2.3.输出
输出通过print函数,完成程序和指令执行结果的回显。图示如下:
2.3.变量与常量
不管是变量,还是常量,都是用于存储,在创建时都会在内存中开辟一块空间,用于保存它们的值。
2.3.1.变量
在python中,声明变量,不需要指定类型,这得益于python的动态语言特性。比如以下几个例子:
#变量基本定义
a = 1
b = 2
c = a + b # 先计算a+b的值,再赋给c
print(c)
#同时给多个变量赋值
a,b,c = 1,2,3
print(a)
print(b)
print(c)
执行结果:
2.3.2.常量
常量从定义本身来看,是说在程序运行过程中,值不会发生变化。在一些编程语言中,比如java从语法本身上加以了限定,使用final关键词来修饰的变量,即为常量。
但是需要注意,在python中,没有在语法层面去加以限定,只是做了一种规范约束 ,以大写命名的变量,即为常量。
#以大写命名,即为常量
PI = 3.14159265359
print(PI)
#但是要注意,语法层面没有加以限制,仅仅是约定熟成的规范
PI = 10
print(PI)
执行结果:
2.4.字符串
字符串在编程语言中是最常见,使用最多的数据类型。python编程语言中定义字符串的方式有三种(区别于其它编程语言,比如java)。
2.4.1.字符串定义
#使用单引号定义字符串:''
str = '我喜欢学习python'
print(str)
#使用双引号定义字符串:""
str = "我喜欢学习python"
print(str)
#使用三重引号定义字符串:''' ''' """ """
str = """我喜欢学习python,
你也喜欢吧
"""
print(str)
执行结果:
2.4.2.字符串中使用变量
在python字符串中使用变量,可以使用f-strings语法
#字符串中使用变量
a = 666
print(f"a的值是:{a}")
执行结果:
2.4.3.字符串基本操作
2.4.3.1.运算符操作
python编程语言为方便字符串操作,提供了相应的操作支持,非常方便日常开发。
- 成员运算
#成员运算
a = "123"
b = "123456"
c = "456789"
print(a in b)
print(a not in c)
执行结果:
- 连接运算
#连接运算
a = "xyz"
b = "iop"
print(a+b)
执行结果:
- 切片运算
#切片运算
a = "abcdefg"
#取第i项,i从0开始
print(a[2])
#取从i到j的切片
print(a[2:5])
#取从i到j的切片,步长k
print(a[2:5:2])
执行结果:
2.4.3.2.内置函数操作
#str.count(sub[,start[,end]]):返回字符串sub,在[start,end]范围内非重叠出现的次数
print("xyz".count("x"))
#str.isalnum():如果字符串中的所有字符都是字母,或数字返回True,否则返回False
print("xyz".isalnum())
#str.isalpha():如果字符串中的所有字符都是字母返回True,否则返回False
print("xyz".isalpha())
#str.split(sep=None,maxsplit=-1):返回一个由字符串内单词组成的列表,使用sep作为分隔字符串
print("x,y,z".split(","))
#str.startswith(prefix[,start[,end]]):如果字符串以指定prefix开始,那么返回True,否则返回False
print("xyz".startswith("xy"))
#更多字符串内置函数参考:https://docs.python.org/zh-cn/3.11/library/stdtypes.html#string-methods
执行结果:
2.5.注释
给注释下一个定义,注释即为软件代码的说明书。充分说明了注释的重要性。但是,在实际编程过程中,很多程序员朋友都有这样的认知,即最厌恶自己写注释,和最厌恶别人不写注释!但不管怎么样吧,希望新入门的朋友们能够改变一下这样的认知局限,所谓己所不欲勿施于人!
下面我们来看python中该如何写注释
#在python中,注释的标识符号是“#”号,即以#井号标识的内容会被解释器忽略
#单行注释
#下面是打印输出:hello python!
print("hello python!")
#多行注释,在python函数中,可以使用""" """标识多行注释
# 定义函数
def hello():
"""
打印hello python!
:return:
"""
print("我喜欢学习python!\n")
2.6.命名规范
在python编程中,命名涉及到类名称,函数名称,变量名称。好的有意义的名称让程序代码清晰明了,增强可读性和可维护性。
具体来看一些命名规范建议。
2.6.1.变量命名
- 命名规则: 变量名通常使用小写字母加下划线的方式 。比如:user_name,total_count
- 私有变量:使用单下划线表示私有变量(比如:private_var),双下划线表示名称改写(比如:__private_var会被改写Classname__private_var)
- 常量命名: 常量通常使用全大写字母并用下划线分隔 。比如:PI,MAX_NUM
2.6.2.类命名
- 命名规则: 类名使用大写字母开头的驼峰命名法 。比如:MyClassName
- 内部类命名: 内部类可以使用额外的前导下划线以区分 。比如:_MyClassName
2.6.3.函数命名
- 命名规则: 函数名通常使用小写字母加下划线 。比如:my_func
- 私有函数: 以双下划线开头 。比如:__get_name
2.6.4.文件命名
- 命名规则: 文件名通常是小写字母,单词之间使用下划线分隔 。比如:hello_world.py
2.6.5.模块命名
- 命名规则: 模块名通常是小写字母加下划线 。比如:module_name.py
2.6.6.注释事项
- 在各项命名中,避免使用特殊字符
- 避免使用Python的保留字作为变量名或函数名
- 尽量使用全拼写的单词,缩写仅限于常用的缩写
- 关键字的大小写必须与定义时一致