1.易于学习:Python有相对较少的关键字,结构简单,和一个明确定义的语法,学习起来更加简单。
2.易于阅读:Python代码定义的更清晰。
3.易于维护:Python的成功在于它的源代码是相当容易维护的。
4.一个广泛的标准库:Python的最大的优势之一是丰富的库,跨平台的,在UNIX,Windows和Macintosh兼容很好。
5.互动模式:互动模式的支持,您可以从终端输入执行代码并获得结果的语言,互动的测试和调试代码片断。
6.可移植:基于其开放源代码的特性,Python已经被移植(也就是使其工作)到许多平台。
7.可扩展:如果你需要一段运行很快的关键代码,或者是想要编写一些不愿开放的算法,你可以使用C或C++完成那部分程序,然后从你的Python程序中调用。
8.数据库:Python提供所有主要的商业数据库的接口。
9.GUI编程:Python支持GUI可以创建和移植到许多系统调用。
10.可嵌入: 你可以将Python嵌入到C/C++程序,让你的程序的用户获得"脚本化"的能力。
1.在程序全局都会用到的变量,尽量定义在文件开头
2.变量名只能是字母、数字或下划线的任意组合,其它形式均不合法
3.变量名的第一个字符不能是数字
4.原下关键字不要声明为变量名[and , as’, assert’, "break’, class’; "continue , def, delr, elif elset’, except,‘exec’, "finally , "for , from’, globar’, if import, in’.‘is’, 1lambda’, ‘not’, or, "pass’,"print , raise’, return’, 'try,whiler , 'with, 'yield门。这些是Python语法中已经占用了的关键字
1.用拼音、中文做变量名
2.变量名过长
3.不能让人通过名字就能看出来是什么意思
4.首字母大写(大写是用来定义类名的,后面会学)
print(‘helloWorld!’)
有整数,浮点,字符串,布尔,列表,元组,字典,集合
可以通过type()查看数据类型
2.1.1 Int整型
所存的所有整数,都是整型
Age=18
2.1.2 float浮点型
就是小数
Π=3.1415926······
2.1.3 内置数值运算函数
只要加引号都是字符串类型,单引号双引号没有区别。
Name=’小明’
只有true与false两个
常用来判断
列表索引从0开始。列表可以进行截取、组合等。
list2 = [1, 2, 3, 4, 5 ]
list3 = [“a”, “b”, “c”, “d”]
运算符 描述 实例
运算符 描述 实例
== 等于 - 比较对象是否相等 (a == b) 返回 False。
!= 不等于 - 比较两个对象是否不相等 (a != b) 返回 true.
大于 - 返回x是否大于y (a > b) 返回 False。
< 小于 - 返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。 (a < b) 返回 true。
= 大于等于 - 返回x是否大于等于y。 (a >= b) 返回 False。
<= 小于等于 - 返回x是否小于等于y。 (a <= b) 返回 true。
运算符 描述 实例
= 简单的赋值运算符 c = a + b 将 a + b 的运算结果赋值为 c
+= 加法赋值运算符 c += a 等效于 c = c + a
-= 减法赋值运算符 c -= a 等效于 c = c - a
*= 乘法赋值运算符 c *= a 等效于 c = c * a
/= 除法赋值运算符 c /= a 等效于 c = c / a
%= 取模赋值运算符 c %= a 等效于 c = c % a
**= 幂赋值运算符 c **= a 等效于 c = c ** a
//= 取整除赋值运算符 c //= a 等效于 c = c // a
接受一个标准输入数据,返回为 string 类型。
可以用int() 转为字符串
在第一个’’‘前面加一个f
name=input(‘你的名字:’)
age=input(‘年龄:’)
hobby=input(‘爱好:’)
msg=f’’’
----------你的信息{name}----------
Name :{name}
age :{age}
hobby :{hobby}
--------------end----------------
‘’’
print(msg)
range() 函数可创建一个整数列表,一般用在 for 循环中。
range(start, stop[, step])
start开始的数字,stop结束的数字, step步长
print默认是打印一行,结尾加换行。end=’ '意思是末尾不换行,加空格。
<模板字符串>.format(<逗号分隔的参数>)
其中,模板字符串是一个由字符串和槽组成的字符串,用来控制字符串和变量的显示效果。槽用大括号(表示,对应format()方法中逗号分隔的参数。
“{}曰:学而时习之,不亦说乎。”.format(“孔子”)
孔子曰:学而时习之,不亦说乎。’
import random导入随机数模块
random.choice(‘abcdefg’) #随机抽取一个
s=‘asdfghjkl’
random.sample(s,3) #随机抽取3个
random.randint(1,100) # 随机一个1-100的数
if 条件:
满足条件执行的代码
if 条件:
满足条件执行的代码
else:
不满足条件执行代码
if 条件:
满足条件执行的代码
elif 条件:
满足执行条件,不满足上一层if执行条件执行
elif 条件:
满足执行条件,不满足上一层elif执行条件执行
else:
上面条件都不满足执行。
重复执行语句
for i in range(10):
print(i)
for循坏写一个冒泡排序
arr=[1,3,5,4,2]
for i in range(len(arr)):
for a in range(len(arr)):
if arr[i] < arr[a]:
temp=arr[i]
arr[i]=arr[a]
arr[a]=temp
print(arr)
for循坏写一个99乘法表
for i in range(1,10):
for a in range(1,i+1):
print(i,"",a,"=",ia,end= ’ ')
print()
循环次数可以是不固定的,只要条件满足就可以永远循环下去。
num=0
while True:
num+=1
print(f’这是第{num}次循环’)
if num == 100:
break
break与continue
Break结束循环并别不再执行
Continue 跳过当前循环,继续执行下一个
1.字符串是一个有序的字符的集合,用与在计算机储存和表示文本信息
2.下标是从0开始按顺序访问的
3.可以进行切片操作
str=‘hello!my name is Joneey’
print(str[3:5]) #顾头不顾尾
返回字符串x的长度
len(“兼葭苍苍,白露为霜。”)结果为10
返回任意类型x所对应的字符串形式str(1.23)结果为’1.23’
字符串居中字符串居中,函数,fillchar参数可选,返回长度为width的字符串
name=‘我是谁’
print(name.center(11,"*"))
输出:我是谁
计算字符串出现了多少次
a=‘asdaaa’
print(a.count(‘a’,0,4))
输出:2
判断是不是以sub结尾 返回布尔类型
判断是不是以sub开头 返回布尔类型
判断是不是整数 返回布尔类型
列表转字符串 “”可以写拼接的字符
字符串替换,第三个参数为替换的个数
字符串分割为列表 ‘ ’ 里面可以写分隔符
返回字符串str的副本,全部字符小写
返回字符串str的副本,全部字符大写
返回 -1表示没找到,如果过找到就返回字符串的索引
1.[]内用逗号分隔,可以存放各种类型。
2.按照从左向右的顺序,下标从0开始有序
数据会追加到尾部
arr.append(‘’)
可以插入到任何位置
arr.insert(index,sub)
index为插入的位置 sub为插入的元素 sub可以为一个列表
把另一个列表合并起来
Arr.extend(arr2)
del arr[index]
输入下标删除
arr.pop() 默认删除最后一个元素并返回被删除的值
name.pop(index) 删除指定索引的元素
remove删除
arr.remove(‘bing’) #删除第一个找到bing值
clear清空
清空列表 arr.clear()
arr.index(‘bing’)
返回第一个找到元素的索引
arr.count(‘bing’)
返回找到的bing的个数
在不知道一个元素在列表哪个位置的情况下,如何修改:
1.先判断在不在列表里,item in list
2.取索引, item_index = names.index(“eva”)
3.去修改, names[item_index]=“铁蛋”
可以同时取出多个值 顾头不顾尾
arr[start,end]
倒着切
arr[-start,-end]
步长(跳切)
arr[start,end,step]
step默认为1 可设置每几个且一次
可以将一个列表排序
Arr.sort()
Arr.reverse()
可以将列表反转
定义
:{key1:value1,key2:value2}
info={
‘name’:‘小明’,
‘age’:19
}
特性:
Msg={
Jack:[21,’love Rose’]
}
新增一个
names[ “Rose”]=[ 21,,“love Jack” ]
names.pop ( " " )#删除指定key
del names [ “oldboy” ]#删除指定key,同pop方法
names.clear ( ) #清空dict
Mgs[‘Jack’]
输出:[21,’love Rose’]
Mgs.keys() 打印所有的key
Msgs.values()打印所有的value
Msgs.items() 将字典转为元组
方法1:
for i,v in info.items():
print(i,v)
方法2: 推荐使用
for k in info:
print(k,info[k])
函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()。
def funName():
print(“这是我的第一个函数”)
调用方法
funName()
def funName(name):
print(‘我爱你’+name)
funName(‘李华’)
输出:我爱你李华
形参:形参就是形式上的参数,可以理解为数学的X,没有实际的值,通过别人赋值后才有意义。如上所示def funName(name) 中的name就是一个形参。
实参:实参就是实际意义上的参数,是一个实际存在的参数,可以是字符串或是数字等。如上所示funName(‘李华’)中 李华就是一个实参。
return 用来返回函数的值,也可以用来中断函数
函数封装一个冒泡排序方法
arr=[1,3,5,4,2]
def sort(arr):
for i in range(len(arr)):
for a in range(len(arr)):
if arr[i] < arr[a]:
temp = arr[i]
arr[i] = arr[a]
arr[a] = temp
return arr
print(sort(arr))