首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

自学Python笔记(二)

作为最最基础的初学者,尤其是面对中小学生学习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基本语言表达一下,说太多也白搭,实践最重要,赶紧试试吧。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20171230G0RDSR00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券