python语法
TIPS:本文适合有一定编程语言基础的人快速复习python基本语法
python的IO:
- 基础input
a=input()
:默认输入
- 基础output
print()
:默认输出- 默认换行
- 参数
end=""
控制字母之间的距离,可以理解为默认为换行符,修改后就不会自动换行
python字符串
- 三种定义:
'A',''A'','''A'''
前两种没有任何区别,python没有字符类型,第三种可以换行输入字符 - 字符串的索引:
str[start:stop:step]
“范围索引”,这是python的特色
- 字符串的格式化
message="%.2f+%s"%(n1,n1)
注意还有一个 % 作为分隔
python的运算符
- 成员运算符:返回bool
list=[1,2,3,4,5,6,8]if 7 in list:print("yes!")else:print("no!")if 7 not in list:print("yes!")else:print("no!")
- 身份运算符 :比较数据类型,返回bool
a=20
b=20#等价于C++ typeid(a)=typeid(b)
if a is b:print("yes!")
else:print("no!")
- Python逻辑运算符
&&-and / ||-or / !-not
if 1+1==2 and 1>2:print("yes!")
else:print("no!")
- 除法运算符:
3//2=1
整除,返回整数3/2=1.5
浮点数除法,返回浮点数
python循环
for i in range(10):#
while(i<10):#
- python的for和while循环可以加else语句,在不break的情况下自动执行一次
- 其他与C++完全一致
-
range函数
- 生成整数序列,可用于生成列表!
range(stop)
默认是结束范围(不包括)range(start,stop,step)
默认左闭右开,step是步长
-
random函数
import random
导入random包- 类内静态函数
分别有生成随机整数和随机浮点数的静态方式random.random()
默认生成[0,1)浮点数random.randint(1,100)
生成指定范围的随机整数random.uniform(0.01,1e+9)
生成指定范围的随机浮点数
print(random.random()*10)
print(random.randint(1,100))#分别生成指定的整数和浮点数
print(random.uniform(0.01,1e+9))
print(random.randrange(0,100,3))#在一个按步长递增的集合里随机选元素
python列表
- 基本操作
- 直接初始化:
- 循环初始化:
[i for i in range(10)]
- 范围索引:
[1:4:2]
和[-1]
python数组的下标可以是负数 list3=list1*4
:倍增列表list3=list1+list2
:拼接列表list1.append(1)
:添加元素del list1[2]
:删除元素 注意这个操作不是类内操作,而是脚本操作del list
:删除列表
tuple元组
- 类似于列表,可以是n元组,但是不可以修改元素
- 基本操作
tup=(a,b,c)
:初始化del tup
:删除元组del tup[2]
:错误的,不能够修改元素
python字典
key:value
:基本数据类型,key必须是不可变对象- 基本操作:
len(d)
:长度d.get(key)
:寻找键为key的元素,类似于C++map的map.find(key)
d.values()
:返回所有值d.clear()
:清空元素
python的函数
- python的函数参数类型分为可变对象和不可变对象
- 可变对象默认是引用传递,不可变对象默认是值传递,与C++和Java最大的区别
- python的函数参数类型推导是动态的,所以只需要定义变量即可
- 可以在变量旁加上
a:int
作注释,不影响解释器
- 可以在变量旁加上
def f(n:int):if n==0:return 1else: return n*f(n-1)
#这段代码不改变传入参数的值def h(list4):list4.append(5)return list4
#这段代码改变传入参数的值
python的模块
import support
:导入python文件,类似C++的头文件import support.xxx
:导入support下具体某个方法或类from numpy import xxx
:导入numpy内下的特定文件from numpy import *
:导入numpy整个库,类似Java