1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 快速掌握python3语法_【Python】Python3基本语法入门学习

快速掌握python3语法_【Python】Python3基本语法入门学习

时间:2020-01-24 08:35:40

相关推荐

快速掌握python3语法_【Python】Python3基本语法入门学习

0.Python概述

1.First Word Game

2.变量与字符串

3.improved game

4.Python数据类型

5.常用操作符

6.分支与循环

7.列表

8.元组

9.字符串内置方法 (密码安全性检查脚本)

相关快捷键

零、Python概述

java代码的1/5

脚本语言(源代码编译器由C语言写成)

追求完美的语言

云计算

一、First Word Game

1.缩进表示层次//类比括号

2.BIF = Built-in functions // 内置函数,脚本语言

>>>dir(__builtins__) // 双下划线,查询Python内置函数

>>>help(BIF名称) // 用于查询具体功能,类比MSDN

二、变量与字符串

1.Python没有“变量”,只有“名字”,把名字贴在值的上边

2.名称区分大小写,确保使用英文标点

3.字符串

>>> 5+8

>>> 13

>>> '5' + '8'

>>> '58'

4.原始字符串——反斜杠与转义字符

>>> str = 'C:\now'

>>> str

'C:\now'

>>> print(str) //默认识别\n为回车

C:

ow

>>>

解决方法:

>>> str = r'C:\now'

>>> print (str)

C:\now

>>> str

'C:\\now'

>>>

5.长字符串

使用三引号'''text'''

6.And 不同于 C语言

>>> 3 and 6

6

>>> 6 and 3

3

>>>

7.支持中文作变量名——>UTF-8编码

三、improved game

import random #导入模块

secret = random.randint(1,10)

times =3

print('-----------------------------------')

guess = 0

print ("不妨猜一下",end = "")

#print()默认在打印完字符串后自动添加一个换行符,end=“ ”参数表示用空格代替换行

while(guess != secret) and (times >0):

temp = input()#input 返回值始终是字符串

if temp.isdigit():#所有字符都是数字,为真返回true

guess = int(temp) #变量使用之前必须进行赋值

if guess == secret:

print("Bingo!")

print("哼,猜中了也没有奖励!")

else:

if guess > secret:

print("too big")

else:

print("too small")

if times > 0:

print ("One more try!",end = " ")

else:

print ("机会用完啦")

else:

print("抱歉,输入有误,请重新输入")

times = times - 1

print("游戏结束,不玩啦^_^")

四、闲聊之Python 数据类型

概述:整型 布尔类型 浮点型 科学计数法(e记法)

1.强制转换

int(5.99) == 5 #截断处理

str(520) == '520'

2.获得关于数据类型的信息

>>> v1 = '520'

>>> type(v1)#类型名称

>>> isinstance(v1,int)

False

五、常用操作符

5.1除法

Python3 已采用真实值除法,若想用floor需用双斜杠//

10 / 4 == 2.5

10 //4 == 2

5.2 幂运算 **

需注意优先级问题

>>> -3 ** 2

-9

>>> 3 ** -2

0.1111111111111111

>>>

六、分支和循环 ——>打飞机小游戏

6.1 C语言之悬挂匹配

if()

if ()

printf();

else //就近匹配,与缩进量不符——>C语言括号习惯

printf();

6.2 断言assert

条件为假时抛出AssertionError的异常

>>> assert 3>5

确保某个条件一定为真

6.3 if-elif-else 判断语句

6.4 成员资格运算符

>>> name = "plane"

>>> 'p' in name

True

6.5 for 循环

for循环可以遍历任何序列的项目,如一个列表或者一个字符串。

语法:

for循环的语法格式如下:

for iterating_var in sequence:

statements(s)

fruits = ['banana', 'apple', 'watermelon']

for each in fruits: #each为循环变量,类比i

print(each,len(fruits))

banana 3

apple 3

watermelon 3

6.6 range()

语法:range( [start,]stop[,step = 1(default)])

作用:生成一个从start到stop(不含)的数字序列,默认step = 1

>>> for i in range(2,5):

print(i)

2

3

4

七、列表:一个打了激素的数组

7.1 创建列表

number = [1,2,3,4,5] #普通列表

mix =[1,"v1",[1,2,3]]#混合列表

empty = [] #空列表

7.2 修改列表方法

member.append('apple') #追加单参数

member.extend(['A','B'])#用拓展列表的方法追加多个元素

member.insert(0,'Pudding')#有序插入,从0开始

>>> member = ['Louis']

>>> member.append('apple')

>>> member

['Louis', 'apple']

>>> member.extend(['A','B']

)

>>> member

['Louis', 'apple', 'A', 'B']

>>> member.append(['C','D']) #区分append & extend

>>> member

['Louis', 'apple', 'A', 'B', ['C', 'D']]

>>>

7.3 列表元素

# 1.获取列表元素

>>> member[1]

'apple'

# 2.删除元素

member.remove('A') #无需关心位置

del member[3]

del member #删除整个列表

# 3.弹栈操作

>>> member.pop()

'B'

>>> member

['Louis', 'apple', 'A']

>>>

>>>member.pop(index) #索引号pop

# 4.列表分片 ————一次性获取多个元素

#语法:listname[start:end:step]

['Louis', 'apple', 'A']

>>> member[1:3] #3-1 == 2 ,两个元素

['apple', 'A']

>>> member2 = member[:] #获得列表的拷贝(不修改原列表)

>>> member2

['Louis', 'apple', 'A']

P.S.list1 = list2 #此时list1 ,list2 指向同一内存区域

7.4 列表操作符

比较操作符:只比较第一个元素

>>> list1 = [1,2,3]

>>> list2 = [2,1,3]

>>> list1 < list2

True

>>>

7.5 列表的内置函数(BIF)

dir(list) #动手并应用

1.索引查找

list2.index('123',3,7) #查找索引号3~7之间的元素,返回'123'第一次出现的索引

2.Reverse 逆序列表

3.sort() 排序

sort方法还有两个可选参数:key和reverse

key在使用时必须提供一个排序过程总调用的函数:

x = ['mmm', 'mm', 'mm', 'm' ]

x.sort(key = len)

print x # ['m', 'mm', 'mm', 'mmm']

reverse实现降序排序,需要提供一个布尔值:

y = [3, 2, 8 ,0 , 1]

y.sort(reverse = True)

print y #[8, 3, 2, 1, 0]

八、元组:带上了枷锁的列表 tuple

元组和列表的区别

——元组不可被轻易修改,只能通过新建来间接修改,消耗了资源

——不止小括号和中括号的区别,逗号才是关键!

8.1 创建和访问一个元组

>>> temp1 = (1)

>>> type(temp1)

>>> temp = []

>>> type(temp)

>>> temp = ()

>>> type(temp)

>>> temp = 2,3,4

>>> type(temp)

>>> temp = 1,

>>> type(temp)

8.2 更新和删除元组

切片方法

>>> v1 = ('A','B','C','D')

>>> v1 = v1[:2] + ('插入的字符串',) + v1[2:]

>>> v1

('A', 'B', '插入的字符串', 'C', 'D')

P.S. 回收机制:无标签指向时自动回收

8.3 元组相关的BIF

count()

index()

8.4 python引入了负数索引

九、字符串:各种奇葩的内置方法

概述

内置方法

注释

capitalize()

把字符串的首字符改成大写

casefold()

把字符串的所有字符改成小写

center(width)

把字符串居中,并使用空格填充至长度width的新字符串

count(sub[,start,end])

返回sub在字符串中出现的次数,start和end参数可选

encode(encoding)='utf-8',error='strict'

以encoding指定的编码格式对字符串进行编码

endwith(sub[,start,end])

检查是否以sub字符串结尾

expandtabs([tabsize]=8)

把字符串中的tab(\t)转化为tabsize个空格(部分覆盖)

find(sub[,start,end])

存在则返回索引值,否则返回-1

index(sub[,start,end])

存在则返回索引值,否则产生异常ValueError

join(sub)

以字符串作为分隔符,逐个插入到sub中所有的字符之间

rfind(sub[,start,end])

从字符串右边开始查找,效率有别(逆向思维)

split([sep=None,maxsplit = -1])

不带参数默认以空格为分隔符切片字符串,如果maxsplit参数有设置,则仅分隔maxsplit个字符串,返回切片后子字符串拼接的列表 (例如找到空格就切分)

strip(['string'])

删除指定字符,default:space

translate(table)

根据table的规则(可以由str.maketrans('a','b')定制)转换字符串中的字符

9.1 本质:返回新字符串,原字符串空间仍存在(类比Java GC机制)

9.2 内置方法示例

//join

>>> str2

'xiaoxie'

>>> str2.join('123')

'1xiaoxie2xiaoxie3'

//split

>>> str1 = 'i love life'

>>> str1.split()

['i', 'love', 'life']

>>> str1.split('i')

['', ' love l', 'fe']

>>> str7 ='sssaaasss'

>>> str7.translate(str.maketrans('s','b'))

'bbbaaabbb'

>>> str.maketrans('s','b')

{115: 98} //字典映射

9.3 python三引号 区别

python 三引号的形式用来输入多行文本,也就是说在三引号之间输入的内容将被原样保留,之中的单号和双引号不用转义,其中的不可见字符比如/n和/t都会被保留,这样的好处是你可以替换一些多行的文本

9.4 密码安全性检查脚本

# 密码安全性检查代码

#

# 低级密码要求:

# 1. 密码由单纯的数字或字母组成

# 2. 密码长度小于等于8位

#

# 中级密码要求:

# 1. 密码必须由数字、字母或特殊字符(仅限:~!@#$%^&*()_=-/,.?<>;:[]{}|\)任意两种组合

# 2. 密码长度不能低于8位

#

# 高级密码要求:

# 1. 密码必须由数字、字母及特殊字符(仅限:~!@#$%^&*()_=-/,.?<>;:[]{}|\)三种组合

# 2. 密码只能由字母开头

# 3. 密码长度不能低于16位

symbol = r'''`!@#$%^&*()_+-=/*{}[]\|'";:/?,.<>''' #三引号,原样保留\t等转义字符

string = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'

number = '0123456789'

passwd = input('请输入需要检查的密码组合:')

# 判断长度

length = len(passwd)

while (passwd.isspace() or length == 0) :

passwd = input("您输入的密码为空(或空格),请重新输入:")

length = len(passwd)

if length <= 8:

flag_level = 1

elif 8 < length < 16:

flag_level = 2

else:

flag_level = 3

flag_con = 0

# 判断是否包含特殊字符

for each in passwd:

if each in symbol:

flag_con += 1

break

# 判断是否包含字母

for each in passwd:

if each in string:

flag_con += 1

break

# 判断是否包含数字

for each in passwd:

if each in number:

flag_con += 1

break

# 打印结果

while 1 :

print("您的密码安全级别评定为:", end='')

if flag_level == 1 or flag_con == 1 :

print("低")

elif flag_level == 2 or flag_con == 2 :

print("中")

else :

print("高")

print("请继续保持")

break

print("请按以下方式提升您的密码安全级别:\n\

\t1. 密码由数字、字母及特殊字符三种组合\n\

\t2. 密码长度不能低于16位")

break

P.S.快捷键

1.回到上一条语句 alt+n ctrl+p

2.智能输入提示 tab

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。