python基础语法
之前学过一点python后来忘干净了
再看的时候写了这篇笔记,自己复习用的
东西不全,但是可以供有点编程基础的同学快速入门一下子
有不对的地方敬请指正
内容参考了很多博主,这里感谢下各位大佬
输入输出
print("Hello"," World!")
name=input()
多行
#一半情况的多行编写,加\
a = 128
b = 1024
c = 512
d = a + \
b - \
c
#{}[]()中的不需要加\
注释
'''
多行注释
'''
"""
这个也是多行注释
"""
#单行注释
常用运算符
#注意没有++和--运算
# and、or
# a is b 、a is not b 判断是不是引用同一个对象a
'''
位运算
& 与
| 或
^ 亦或
~ 取反
>> 右移
<< 左移
'''
循环&条件
#注意下break,continue,pass的用法
#while
a=1
while True:
a+=1
if a==5:
pass
else :
print(a)
if a>=10:
break
#for
str = 'Python'
for s in str:
if s == 'o':
continue
print(s)
#if elif else
a=1
if a==1:
print(1)
elif a==2:
print(2)
else:
print("else")
数字类型
包括int(整型),float(浮点),complex(复数)
#复数记号一定是j
n=1 + 1j
print(n)
#运算
a=13
b=2
print(a//b) #取整得6
print(a%b) #取模得1
print(abs(a))#绝对值
print(a**b) #a的b次幂 同pow(a,b)
print(complex(a,b))#返回复数a+bj
#强转
int(a)
float(a)
#数学函数 import math
x=3
import math
math.ceil(x)#向上取整
math.floor(x)#向下取整
math.exp(x)#e的x次方
math.log(x)#e为底
math.log10(x)#10为底
math.sqrt(x)#根号x
math.factorial(x)#x的阶乘
#随机数 import random
import random
print(random.random()) #生成(0,1)之间的float
print(random.uniform(1,44))#生成(1,44)之间的float
print(random.randint(1,6)) #生成(1,6)之间的int
列表
l = [1024, 0.5, 'Python']#定义
#print(l.__len__())#长度
print(len(l))#长度
print('l[0] -->', l[0]) #l[0] --> 1024
print('l[1:] -->', l[1:])#l[1:] --> [0.5, 'Python']
l[1] = 5 #修改
l.append('Hello')#添加
del l[1]#删除
l.count('d')#查‘d’的个数
l.index('d')#第一个'd'的索引
l.remove('d')#删除第一个'd'
l.sort()#排序
lc = l.copy()#复制
元组(tuple)
t = (1024, 0.5, 'Python')
print('t[0] -->', t[0])
print('t[1:] -->', t[1:])
print(len(t))#长度
t = (1024, 0.5, 'Python', 'Hello')#不能修改只能重新赋值
del t#不能单独删除,只能整体删除
max(t)#取最大
min(t)#取最小
字典
d = {'name':'小明', 'age':'18'}
print( d['name'])#key->value
print(d.get('name'))#key->value
d['age'] = '20'#修改
d.clear()#清空d
len(d)#键值对个数
集合
#集合不允许有重复元素
s = {'a', 'b', 'c'}#创建
s = set(['a', 'b', 'c'])#创建
s.add('d')#添加
s.update('e')#添加
s.remove('c')#删除
s.clear()#清空
len(s)#长度
函数
#不定长参数:
def myFunc(*params):
print(type(params))
for p in params:
print(p)
myFunc(1,"abc",{'name':'xz'})
'''
输出:
<class 'tuple'>
1
abc
{'name': 'xz'}
'''
基础语法(下)
包和模块
#模块:.py 结尾,相当于Java中的.java文件
#包:package,包括_init_.py(python3.3之后不再必要)和其他.py文件
#导包:
from package import module1,module2
from package import *
import package.module
from package.module import func#导入func函数
面向对象基础
继承:Python的类可以继承多个类,Java和C#中则只能继承一个类
多态:python 是鸭子语言不需要多态,本篇不展开讲解
class Cat:
# 属性:python的类中只有私有成员和公有成员两种
color = 'black'#公有
__age = '3'#私有
# 构造方法,参数要加上那个self
def __init__(self, name):
self.name = name
# 自定义方法,带上self
def eat(self, food):
self.food = food
print(self.name, '正在吃' + food)
def getAge(self):
return self.__age
#继承:Python的类可以继承多个类,Java和C#中则只能继承一个类
class FatCat(Cat):
weight = 20
def __init__(self, name):
super().__init__(name)
def loseWeight(self,num):
self.weight-=num
print('成功减重',num,'kg')
c=FatCat('hello')
c.eat('food')
c.loseWeight(9)
print(c.color)
print(c.getAge())
文件基础
'''
r读,w写,a追加,+读写,b二进制
x排他创建存在则创建失败
'''
with open('text.txt','r+',encoding='utf-8') as f:
f.read(10)#读取10个字节
f.readline()#读取一行
f.readlines()#读取全部,返回列表
f.write("str")
f.writelines(['str1','str2','str3'])
异常
def getNum(n):
try:
print('try --> ',10 / n)
except IOError:
print('Error: IOError argument.')
except ZeroDivisionError:
print('except --> Error: ZeroDivisionError argument.')
else:#没异常就执行这句
print('else -->')
finally:#这句一定会执行
print('finally -->')
#手动抛出异常
raise NameError('HiThere')