作为最最基础的初学者,尤其是面对中小学生学习Python我想大概了解一下Python,能编个小程序,能看懂一般的程序就可以,如果想深一步的学习还是需要静下心来好好研究一番,兴趣是第一位的,虽然需要紧跟时代需要,但未必让所有人成为编程大师。
昨天有朋友问我“你是不是想学人工智能?”说实话我感觉Python真的和人工智能没半毛钱关系,就好比铁匠打了把好刀,锤子说是我打的一样。我的同行好多连编程是什么都搞不明白(不服来辩),学新东西更是没有动力,所以我还是希望以完全初学者的角度入手来认识Python这个语言。
Python之所以能进入中小学教材,作为动态语言它非常适合初学编程者,它可以让初学者把精力集中在编程对象和思维方法上,而不用去担心语法、类型等等外在因素,但这并不代表你可以天马行空的去写,有一些基础的东西还是需要注意的,不然可能会走弯路。
基本知识
1、Python 标识符
标识符用于识别变量、函数、类、模块以及其他对象的名字,在 Python 里,标识符由字母、数字、下划线组成,但不能以数字开头,而起是区分大小写的。假如以下划线开头的标识符是有特殊含义的,后面根据需要(类和面向对象)再特别解释强调。
在Python 中可以同一行显示多条语句,方法是用分号 ; 分开,如下:
print ('hello');print ('world');
2.Python 保留字符
下面的列出了Python中的保留字,这些保留字不能用作常数或变数,或任何其他标识符名称。这些保留字希望初学者都要清楚它们的含义和用法,不明白的地方可以尝试写段代码看看效果。
Python3中的保留字
Python中的保留字的意义:
and用于表达式运算,逻辑与操作
as用于类型转换
assert断言,用于判断变量或条件表达式的值是否为真
break中断循环语句的执行
class用于定义类
continue继续执行下一次循环
def用于定义函数或方法
del删除变量或者序列的值
elif条件语句 与if else结合使用
else条件语句 条件语句,与if,elif结合使用。也可以用于异常和循环使用
exceptexcept包括捕获异常后的操作代码,与try,finally结合使用
exec用于执行python语句
for循环语句
finally用于异常语句,出现异常后,始终要执行finally包含的代码块。与try,except结合使用
from用于导入模块,与import结合使用
global定义全局变量
if条件语句,与else,elif结合使用
import用于导入模块,与from结合使用
in判断变量是否存在序列中
is判断变量是否为某个类的实例
lambda定义匿名函数
not用于表达式运算,逻辑非操作
or用于表达式运算,逻辑或操作
pass空的类,函数,方法的占位符
print打印语句
raise异常抛出操作
return用于从函数返回计算结果
try包含可能会出现异常的语句,与except,finally结合使用
while循环语句
with简化Python的语句
yield用于从函数依次返回值
3.行和缩进
在Python用缩进来控制类,函数以及其他逻辑判断。所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。
如下运行是正确的(吐槽一下头条的引用,保存后自动对齐了):
心塞~
if True:
print ('Answer')
print ('True')
else:
print ('Answer')
print ('False')
如果如下就会出现“IndentationError: unindent does not match any outer indentation level”错误提示。
if True:
print ('Answer')
print ('True')
else:
print ('Answer')
print ('False') #注意这行代码缩进
4.Python 引号和注释
Python 可以使用引号( ' )、双引号( " )表示字符串,引号的开始与结束必须的相同类型的。
python中单行注释采用 # 开头,多行注释使用三个单引号(''')或三个双引号("""),如下:
# 文件名:helloworld.py
name = "Wuge" # 这是一个注释
'''
这是多行注释,使用单引号。
这是多行注释,使用单引号。
这是多行注释,使用单引号。
'''
5.Python 的基本运算
本来这部分不打算写,考虑到给和我一样的初学者交流用的,最最基础的东西还是要打的~
Python语言有算术、比较(关系)、赋值、逻辑、位、成员、身份等几类运算符。
(1)算术运算符:包含+、-、*、/、%、**、//等7个。其中前面4个是我们从小就知道的,后面三个做简单解释:
“%”取模,它的结果是返回除法的余数,如 9%4,返回的结果是1。
“**”幂,返回x的y次幂,如2**4 为2的4次方,返回的结果是16。
“//”取整除,返回商的整数部分,如9//2 返回结果是 4 , 9.0//2返回结果是4.0(提醒一下:如果其中有浮点数结果就是浮点数)
(2)比较运算符:其中>、=、
“==”等于,比较对象是否相等。
“!=”“”不等于, 比较两个对象是否不相等。
(3)赋值运算符:说到赋值可不仅仅是“=”这么简单,掌握一些技巧可以加快开发速度,除去基本的“=”外还可以与算术运算符结合使用,如“+=”为加法赋值运算符,如a+= b 等效于 a = a + b,其他类推。
(4)逻辑运算符:这个在编程中也是经常用到的。
“and” "与"运算,如果两个操作数都为真,则条件成立。
or "或"运算 ,如果两个操作数中的任何一个成立,则条件成为真。
not "非"运算,用于反转操作数的逻辑状态。
(5)位运算符:位运算符是把数字看作二进制来进行计算的,在Python中可以用bin()函数获得整数的二进制数,位运算对于生活在十进制的世界里的人来说比较抽象,建议好好研究一下。
“&” 按位与运算符:参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0;
“”按位或运算符:只要对应的二个二进位有一个为1时,结果位就为1。
“^”按位异或运算符:当两对应的二进位相异时,结果为1。
“~”按位取反运算符:对数据的每个二进制位取反,即把1变为0,把0变为1 。
“
“>>”右移动运算符:把">>"左边的运算数的各二进位全部右移若干位,>> 右边的数字指定了移动的位数。
(6)成员运算符:有两个“in”和“not in”,字面理解也简单,就是在指定的序列中能不能找到值。
(7)身份运算符:用于比较两个对象的存储单元,有两个“is”和“not is”,在使用中往往与“==”混淆,“is”用于判断两个变量引用对象是否为同一个, == 用于判断引用变量的值是否相等,这个在后期用到时再慢慢解释,今天是先了解。
如四则运算一样上面几类运算符也是有优先级别的,如果弄错了会得到不同的结果,这里也务必注意。
各类运算符的优先级别
Python的条件与循环
这一部分我也归到基本知识里面了,感觉中小学编程中学到这基本可以写简单的小程序了。
(1)条件也就是决策,根据各种条件推断往哪个方向走然后进行哪些具体的操作,在程序语言中这些条件可以理解为多个求值表达式,这些表达式会产生TRUE或FALSE结果,根据结果为TRUE或为FALSE确定要执行的操作和要执行的语句。
if流程
实际应用中条件判断可以直接用 if语句、或if…else语句或者多个if语句嵌套使用,分别举例说明(再次吐槽头条的引用对齐,理解就好)
if语句单独使用(如果你需要做汉字输出需要py文件格式编码为UTF-8,否则会出现错误):
var = 5
if ( var ==5 ) : print ("结果是5")
print ("谢谢使用")
运行结果
if…else语句或elif组合使用
第一种情况是if语句中的条件表达式求值为0或FALSE值时,则执行else语句中的代码块。
比如下面例子,输入采购数量,如果小于10,折扣为9折,如果不小于10,折扣为8折。
amount = int(input("请输入数量: "))
if amount
discount = amount*0.1
print ("折扣:",discount)
else:
discount = amount*0.2
print ("折扣:",discount)
print ("应付款:",amount-discount)
运行结果
再就是嵌套使用了,在一个嵌套的if构造中,可以有一个if...elif...else构造在另一个if...elif...else结构中。
amount = int(input("请输入数量: "))
if amount
discount = amount*0.1
print ("折扣:",discount)
else:
if amount>=1000:
discount = amount*0
print ("找我们经理面谈吧")
else:
discount = amount*0.2
print ("折扣:",discount)
print ("应付款:",amount-discount)
运行结果
(2)Python循环。程序在一般情况下是按顺序执行的,循环语句允许根据设定的条件执行一个语句或语句组多次。常用的有“while 循环”和“for 循环”两种,和if条件语句一样也存在“嵌套循环”模式。
while 循环:在给定的判断条件为 true 时执行循环体,否则退出循环体。
count = 0
while (count < 9):
print ('The count is:', count)
count = count + 1
print ("Good bye!")
运行结果
for 循环:重复执行语句
在C中类似“for (int i = 0; i < 100; i++)”的语句在Python需要利用内置的range()函数,range()是对一系列数字进行迭代的函数,它生成一个算术进化的迭代器,以处理0到n-1的整数,要获取序列的列表对象,可将其列为list()。
range
举例如下:
for var in list(range(5)): # 第一个实例
print (var)
for letter in 'Python': # 第二个实例
print ('当前字母 :', letter)
fruits = ['banana', 'apple', 'mango']
for fruit in fruits: # 第三个实例
print ('当前水果 :', fruit)
print ("Good bye!")
运行结果
在循环语句中还需要用到循环控制语句来控制循环。
break语句:终止循环语句并将执行转移到循环之后的语句。
continue语句:使循环跳过其主体的剩余部分,并立即重新测试其状态以进入下一次迭代。
pass语句:当语法需要但不需要执行任何命令或代码时,Python中就可以使用pass语句,此语句什么也不做,用于表示“占位”的代码。
举个例子:
print ('break Example:')
for letter in 'Python': # break Example
if letter == 'h':
break
print ('Current Letter :', letter)
print ('continue Example:')
for letter in 'Python': # continue Example
if letter == 'h':
continue
print ('After continue statment.')
print ('Current Letter :', letter)
print (' pass Example:')
for letter in 'Python': # pass Example
if letter == 'h':
pass
print ('This is pass block')
print ('Current Letter :', letter)
print ("Good bye!")
运行结果
今天暂且到这里,上面的基本知识掌握了,可以尝试把你的想法用Python基本语言表达一下,说太多也白搭,实践最重要,赶紧试试吧。
领取专属 10元无门槛券
私享最新 技术干货