Python入门基础(基于Python3.6)

00.可以直接到幕布,查看详细代码片段及运行结果

幕布详细笔记,包含代码运行结果

点击查看,详细代码片段及运行结果

0.本文结构脉络图

Python入门基础知识

1.Python环境搭建

参考这篇文章

2.Python初始印象

2.1缩进:python有着严格的缩进要求

tab缩进,shift+tab反缩进
enter键确定下一行正确的输入位置

2.2变量与常量

【0】变量Python的变量类型是由变量值决定的

和Java,C语言等不同,Python定义变量直接写,不需要指定变量类型,赋值后才知道变量类型

【1】Python语句最后不需要加分号作为结尾,Python语句是以换行为语句皆为
【2】变量命名和C语言类似,变量名以字母、数字、下划线组成,但不能以数字开头
【3】不能只使用关键字命名(例如,list_w,str3,tuple_是可以,直接list,str,tuple是不行的)

#给变量赋值为数值100,则num为整型
num = 100
#给变量赋值为字符创'100',则num为字符串类型
num = '100'

常量:例如数学中的圆周率π,上面例子中赋值给变量num的100,'100'都是常量

2.3注释、单引号与双引号

注释快捷键:Ctrl+/
单行注释

#这是单行注释
#这
#是多个
#单行注释

多行注释:【注意】多行注释和多行字符串一样,注意区分

"""
这是
多行
注释
"""

'''
这也是多行注释
'''

单引号和双引号混用:一定要嵌套分隔使用

2.4输入、输出、占位符

输入:input()
输出:print()
占位符:%d,%s,%r 分别代表整型,字符串类型,任意类型

2.5方法定义与调用

#定义
def function_plus(a,b):
    print(a+b)
#调用
function_plus(2,3)
#运行结果
5

2.6类和对象

类:具有相同特点的一类事物
对象:对象是类的实例

2.6.1类和对象的关系

【1】类是对象的抽象化,对象是类的具体化
【2】类和对象的关系是相对来说的
【3】对于面向对象的语言来说:万物皆对象

2.6.2类的创建,对象的实例化,类的方法的调用

类名的写法遵循驼峰命名法(例如:AbcDef),不指定继承类,就默认继承基类object,一个类中一般定义多个方法,方便调用管理

#定义一个名为PrintSometing的类,包括两个方法print_a(),print_b(strx),一个带参数,一个不带参数
class PrintSometing(object):
    def  print_a(self):
        print('改革春风吹满地,')
    def print_b(self,strx):
        print('strx人民真争气!' %s)

#实例化一个对象laowang
laowang = PrintSomething()
#通过老王这个已经实例化的对象,就可以调用类PrintSomething中定义的方法了
laowang.print_a()
laowang.print_b('中国')#这里传入字符串'中国'

#运行结果
改革春风吹满地,
中国人名真争气!

2.7条件、循环语句

if   else,while等条件语句

【注意】Python并没有do while循环,也没有switch case条件判断

2.8循环中断break,continue

break:直接跳出整个循环
continue:结束当前这一次循环,开始下一次循环

2.9异常处理

try:
  #可能出现异常执行的代码
except:
  #出现异常后执行的代码
finally:
  #不管有无异常都会执行的代码

3.序列

3.1列表list[]:有序,长度,内容可变

点击查看,详细代码片段及运行结果

#-------------------------------创建列表------------------------------------------
numlist = [1,99,0]
mixlist = [1,'2','aa','中国']
mixlist1 = [0,[1,100],(9,0,"xx"),100]
#-------------------------------输出列表-------------------------------------------
print(numlist)
#-------------------------------常用方法-----------------------------------------

list.sort()                  #排序,只能对列表元素是纯数字类型的列表排序,默认升序
list.reverse()               #反转,位置颠倒,与大小排序无关,并不按大小排序
list.insert(i,x)             #插入,i表示插入的位置(索引),x表示想要插入的值
list.copy()                  #复制
list1.append(list2)          #追加,将list2作为一个整体,追加到list1后面
list1.extend(list2)          #扩展,将list2中的元素逐个加入到list1后面
list[i] = x                  #将索引为i的元素的值改为x
list[i,j] = x,y,z...         #根据区间(左闭右开)批量更改多个元素的值
del list[i]                  #删除下标为i的元素
list.clear()                 #清空列表,但保留了列表的格式(数据类型)

3.2元组tuple():有序,长度、内容【不】可变

元组,这里做个了解就好,不深究

#-------------------------------创建元组------------------------------------------
nu_tuple = (1,'100',"哈哈")
#-------------------------------输出元组------------------------------------------
print(nu_tuple)

3.3字符串str'':有序,长度、内容【不】可变

点击查看,详细代码片段及运行结果

#-------------------------------创建字符串------------------------------------------
str1 = '10000'
#-------------------------------输出字符串------------------------------------------
print(str1)
#-------------------------------常用方法---------------------------------------------

str(object)     #将其他类型变量,强转为字符串类型
num = 10
str(num)       #这时的num就变成了字符串类型

#替换所有符合要求的内容,例如:"hello".replace(l,x)将hello中所有的l替换成x
str.replace(old,new)      
#【这里有一个深坑】那原来存“hello”的字符串变量的值是不是变成了“hexxo”?
#答案是不会,它的值还是“hello”,为什么呢?因为字符串是【不可变序列】,无论如何改变不了它原有的值
#replace()方法改变的只不过是一个原字符串的副本,副本会变成“hexxo”


str.capitalize()      #将字符串首字母变成大写,其他非首字母有大写的全部变成小写
str.split('分割符')    #按分割符拆分字符串,例如'hello world !'.split('o'),将这个字符串按字符o分割成3段
'拼接符'.join(list)    #jion()拼接方法,将某些字符串按拼接符连接起来,例如''.join(['h','ell','o']),就是用null来连接三个字符串元素,结果为“hello”

str.upper()            #将字符串全部变成大写
str.lower()            #将字符串全部变成小写
str.startwith('xx')    #返回布尔值,字符串是否以xx开头
str.endwith('xx')      #返回布尔值,字符串是否以xx结尾
str.isnumeric()        #返回布尔值,字符串的值是否是纯数值类型(例如,'100'就是纯数值型字符串)
str.isalpha()          #返回布尔值,字符串的值是否是纯字母类型

3.4序列的通用操作:主要是查询相关的操作

点击查看,详细代码片段及运行结果
存在性(in,not in )返回布尔值

print('h' in 'hello')              #True
print('he' in 'hello')             #True
print(0 not in [2,4,0,'hello'])    #False
print([1,2] not in [1,2,3,4])      #True
print('开挂' in ('没','有','开挂'))  #True

访问指定范围[]

print('hello'.[1])                        #e
print('hello'.[1:3])                      #el
print([1,2,'xx','哈哈',100,'99'][2])      #xx
print([1,2,'xx','哈哈',100,'99'][2:5])    #['xx','哈哈',10]

序列连接(+)

print([1]+[2,3])                  #[1,2,3]
print((1,2)+(3,4))                #(1,2,3,4)
print('hello'+'   '+'Python')    #hello   Python

长度len()

print(len('python'))      #6
print([1,2,'python'])     #3

最大值max()、最小值min()

print(max('python'))                   #p
print(max('p','y','t','h','o','n'))    #p
print(max([1,100,0]))                  #100
#最小值类似,值得注意的是,相同类型的值比较才有意义,例如:数字1和字母x比较就没有意义

求和sum(),只针对整型(数值类型)

print(sum([1,2,3]))   #6
print(sum(1,100))    #101

元素在序列中第一次出现的位置(索引),index(subelement)

print('helloele'.index('e'))        #字母e第一次出现的位置下标,1
print([1,'0','x','xx'].index('x'))  #2

统计值相同的元素出现的次数count()

print('hello world!'.count('o'))        #统计字母o出现的次数,2
print([1,233,4,0,1,23,1].count(1))      #3

3.5序列中的数据类型转换

点击查看,详细代码片段及运行结果
查看顺序:序列——序列中的数据类型转换

#-----------------------数据类型查看type()----------------
print(type(0))        #
print(type('0'))      #
print(type([0]))      #
print(type((0)))      #
print(type({}))       #

#以下4种转换直接去幕布查看吧,链接在上面
#-----------------------tuple  ----->   list  :list(tuple)----------------
#-----------------------list   ----->   tuple  :tuple(list)----------------
#-----------------------list   ----->   str  :str(list)----------------
#-----------------------str    ----->   list  :  list(str)----------------

4.映射

点击查看,详细代码片段及运行结果
查看顺序:映射

4.1创建方法

查看顺序:映射——创建字典

4.2常用方法

查看顺序:映射——常用方法

你可能感兴趣的:(Python入门基础(基于Python3.6))