Python基础语法

本篇文章是我的学习笔记,内容写的很随意。如果你想学习Python,不要看。

一.变量

1.变量类型

整数int类型的数据范围没有上限,只要内存足够,可以存储特别大的数
浮点数只有一种类型float,没有double,但是这个跟其他语言的double没什么区别
字符串使用 ' ' 或者 " " 括起来的
布尔True和False

2.动态类型

python的数据类型可以在运行时发生变化,也就是我们定义一个a,开始时a是int类型,后面可以变成float:

a=134
print(a)
a=123.123
print(a)

二.输入输出

1.输入

使用input函数输入:

b=input()
c=input("输入一个整数:")

input 的参数相当于一个 "提示信息",不写也可以。

注意:input 的返回值是字符串类型,如果后续要操作,要强转类型。

2.输出

使用print函数输出

输出变量:

print(a)

输出a=123:

a=123
print(f'a = {a}')

使用 f 作为前缀的字符串,称为 f-string;{ } 来内嵌一个其他的变量/表达式。

三.运算符

1.算数运算符

1)整数/整数不会截断,比如1/2不是等于0,而是等于0.5;

2)**可以用来算乘方,2 ** 2,2**0.5,都可以;

3)//是取整除法,得到的是整数,会向下取整,比如:7 // 2=3,-7 // 2=-4;

2.关系运算符

整数和浮点数不用说,这里说一下字符串。

==和!=可以判断两个字符串的是否相等,是否不相等。

>,<等可以根据字符串字典序比较大小。

但是要注意==不可以判断浮点数是否相等

3.逻辑运算符

and
or
not取反

4.赋值运算符

连续赋值:

a=b=10

多元赋值:

a,b=10,12

两个变量交换

a,b=b,a

注意python中没有++,--这种运算符。

四.条件语句

1.语法格式

1)if

if expression:
    print(123)

2)if-else

if expression:
    print(123)
else:
    print(456)

3)if-elif-else

if expression:
    print(123)
elif expression2:
    print(456)
else:
    print(789)

观察上面代码,发现有下面几点与其他语言不同:

1)if后面的条件表达式没有括号了,同时{}没了,变成了:

2)多条件分支不是使用else if,而是使用elif

2.空语句

可以使用pass占一个位置:

if expression:
    pass
else:
    print(123)

五.循环语句

1)while

直接举个例子:

while num <= 5:
    num += 1

2)for

基本格式:

for 循环变量 in 可迭代对象:
    循环体

举个例子,打印1-10:

for i in range(1,11):
    print(i)

使用range函数可以生成[1,11)

打印2,4,6,8,10:

for i in range(2,12,2):
    print(i)

range后面还可以规定每次递增的大小

注意:if/while/for内定义变量,在其外部也能使用,这个和其他语言是不一样的。

六.函数

1)语法格式

直接举例子:

def test():
    return 123

def test(a):
    return a

函数要先定义再使用。

2)参数

参数不用定义类型,动态类型,传什么是什么。

可以个参数设定一个默认值,在没有传这个参数的时候就使用这个参数:

def test(a,b,c=True):
    if c:
        print(a)
    else:
        print(b)

可以通过关键词参数来指定传递,这样就算不按照顺序来也行:

def test(a,b):
    print(a)
    print(b)
    
test(b=1,a=2)

3)返回值

这个nb了,可以一下返回多个值

def test():
    x=1
    y=2
    return x,y

这个可以说是我梦寐以求的功能。

如果只想要其中某个返回值,在接收的时候可以使用_跳过:

def test():
    x=1
    y=2
    return x,y

_,b=test()

如果是想在函数内部,修改全局变量的值,需要使用 global 关键字声明,如果不用这个变量就会被当作函数内的局部变量,无法更改全局变量的值。

七.列表

1)创建

两种方法都行:

alist1=[]

alist2=list()

里面可以存储不同的类型。

2)下标

下标可以是负数,表示倒数第几个元素。

3)切片操作

通过切片可以取出一组连续的元素,相当于取出子序列。

常规写法:

alist1=[1,2,3,4,5,6]
print(alist1[0:3])

表示从下标0遍历到下标2位置。

忽略前后边界:

alist1=[1,2,3,4,5,6]
# 从头遍历到最后
print(alist1[0:])
print(alist1[:6])
print(alist1[:])

规定自增大小:

alist1=[1,2,3,4,5,6]
# 从头遍历每次下标+2
print(alist1[::2])
# 从尾遍历每次下标-2
print(alist1[::-2])

增加元素:

alist1=[1,2,3,4,5,6]
# 在尾部插入7
alist1.append(7)
# 在0下标插入3
alist1.insert(0,3)

查找元素:

alist1=[1,2,3,4,5,6]
# in 用来判断in前面的是不是在集合之中
print(2 in alist1)
# index 查询元素所在的下标
print(alist1.index(3))

删除元素:

alist1=[1,2,3,4,5,6]
# pop()可以删除尾部元素
alist1.pop()
# pop(n)可以删除指定下标n的元素
alist1.pop(0)
# remove(n)可以删除值为n的元素
alist1.remove(3)

连接列表:

alist1=[1,2,3,4,5,6]
alist2=[7,8,9]
# 将两个链表合并
alist3=alist1+alist2
# 将链表2加在1的后面
alist1.extend(alist2)

八.元组

元组的功能与列表是基本一致的,但是元组不能修改集合中的元素,列表可以。

元组在很多时候是默认的集合类型,比如一个函数返回多个值的时候。

九.字典

1)创建

hash1={ }
hash2=dict()

2)查找

hash={
    "id":1,
    "name":"Tom"
}
# in 判断in前面的key是不是在集合中
print("id" in hash)
# 通过key取value
print(hash["id"])

3)增加/更新元素

hash={
    "id":1,
    "name":"Tom"
}
# 如果新增的key没在集合中,添加新的
hash["class"]=1
# 如果新增的key已经存在在集合中,更新key的value
hash["id"]=2

4)删除元素

hash={
    "id":1,
    "name":"Tom"
}
hash.pop("id")

5)取出key和value

hash={
    "id":1,
    "name":"Tom"
}
hash.keys()
hash.values()
# 获取所有键值对
hash.items()

十.文件操作

1)打开文件

f=open("C:/code/test.txt","r")

第一个参数是要打开的文件的路径;

第二个参数是打开方式,r是读的方式,w是写的方式,a是追加写的方式

2)关闭文件

f.close()

一个程序能同时打开的文件数量是有上限的

3)写文件

f=open("C:/code/test.txt","w")
f.write("Hello World")
f.close()

这里要注意,如果我们在打开文件的时候第二个参数选择w,那么我们在下次再打开这个文件的时候,文件的内容会被清除。

如果我们不想清楚,要使用a(追加写)。

4)读文件

f=open("C:/code/test.txt","r")
# 从文件中读两个字符
result=f.read(2)
print(result)
f.close()

readlines可以将整个文件读出来,返回的结果是一个列表,每一行是一个元素:

f=open("C:/code/test.txt","r")
result=f.readlines()
print(result)
f.close()

如果我们在本地的文本文件写中文读取时可能会出现乱码的情况,整个时候我们可以指定字符集:

f=open("C:/code/test.txt","r",encoding='utf8')
result=f.readlines()
print(result)
f.close()

如果容易忘记关闭文件怎么办?Python提供了上下文管理器,我们使用with打开文件,当with内部代码执行完后会自动调用关闭方法:

with open("C:/code/test.txt","r",encoding='utf8') as f:
    result=f.readlines()
    print(result)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值