【python】python基础学习笔记

python基础笔记

参考

学习视频

字符串拼接,特殊字符打印

字符串拼接可以用+号。print打印最后默认会换行。\为转义符,比如"表示双引号,\n换行
可以自动换行用三个引号

print('''see you 
see you spaceboy
someday
somewhere''')

运算

乘方符号两个*,向下取整的除法用两个/

print(2**3)
#输出8

#导入math库
import math
#math.函数名()
math.sin(1)

print(3 / 2)#1.5
print(3 // 2)#1

注释

单行用#号,多行用三引号

输入

#input括号里是输入提示,会被打印出来,input返回的是字符串
use_num = input("input cowboy")
print(use_num)

条件语句

注意:条件之后要加上冒号,只会执行一个分支

#在条件之后记得加上冒号
if use_num >= 10:
    print("more than 10")
#嵌套的if语句块要继续缩进
    if use_num > 15:
        print("more than 15")
#python的 elseif
elif use_num >= 23:
    print("23")
else:
    print("less")
    print("than")
print("不缩进的 不再if-else范围里")

#可以使用数学形式的不等式
'''
elif 27 >= use_num >= 23:
    print("27~23")
'''

逻辑运算

与and,或or,非not

列表

注意:python的列表可以存不同类型的数据

#列表 =一个方括号
user_list = []
#添加元素 可以不同类型
user_list.append(123)
user_list.append("123")
user_list.append(127.0)
user_list.append(12)
user_list.append(125)

print(user_list)
#获取长度
print(len(user_list))
#移出指定元素,有多个重复值情况下,一条语句只删除一次
user_list.remove("123")
user_list.remove(127.0)
print(user_list)
print(len(user_list))
#排序函数sorted,升序
print(sorted(user_list))
print(user_list)
#可以用索引访问元素
print(user_list[0])

字典(键值对)

#花括号引起来,键值之间冒号连接
contacts = {
    "boy": "spike",
    "girl": "faye"
}
print(contacts["boy"])
contacts["woman"] = "julia"
print(contacts)

female = "woman"
if female in contacts:
    print(contacts[female])
    
print(len(contacts))

for循环

contacts = {
    "boy": "spike",
    "girl": "faye"
}

contacts["woman"] = "julia"

# keys,values,items表示范围键,值,键值对
for person, name in contacts.items():
    print(person + ' ' + name + '\n')

for person in contacts.values():
    print(person + '\n')

sum = 0
# 结束值不在循环范围里,这里是1-100,第三个参数表示步长
for i in range(1, 101, 2):
    sum += i
print(sum)

while

python的for适合知道次数的遍历,如遍历列表,而while适合条件成立时的循环

user_in = input("end with q")
while user_in != 'q':
    user_in = input("end with q")

format方法

字符串里插入变量的对应的键,对应地方就被变量内容替换

faye = "valentine"
julia = "julia"
spike = "jet"
#将变量对应关键字,就不用遵循顺序
message_content = '''see you
see you {ed},{spike},{ein}
someday
somewhere'''.format(ed=faye, spike=julia, ein=spike)
print(message_content)
# 花括号内可以用数字,对应后面参数出现的顺序
message_content = '''see you
see you {2},{1},{0}
someday
somewhere'''.format(faye, julia, spike)
print(message_content)
#前面加上一个f,花括号里写变量名也可以达到一样效果
message_content = f'''see you
see you {faye},{spike},{julia}
someday
somewhere'''
print(message_content)

函数

注意:同样函数名后有一个冒号,函数体每行要缩进

def my_print(sex, name, age):
    print("sex:" + sex + "name:" + name + "age:" + str(age))
    return sex + name


res = my_print('女', '宇多田光', 30)
print(res)

import引入库

#直接接库名,调用时要用名字.函数名/变量名
import math
math.sin(1)
#from import,只引入需要的部分,访问时不需要加库名
from statistics import median, mean
# 中位数
print(median(stu_score))

类的创建

class Cat:
    # 构造函数前后两个下划线,第一个参数是对象本身
    def __init__(self, name, age, color):
        self.name = name
        self.age = age
        self.color = color

    def miao(self):
        print(f'我的名字叫{self.name}')


luoxiaohei = Cat('罗小黑', 200, "black")
# print(f'早安喵{luoxiaohei.name}晚安喵{luoxiaohei.color}')
luoxiaohei.miao()

继承

注意:子类的构造函数 不会 默认调用父类的构造函数,要用super()显示调用父类的构造函数。

class Animal:
    def __init__(self, name, age):
        self.name = name
        self.age = age


class Cat(Animal):
    # 前后两个下划线,第一个参数是对象本身
    def __init__(self, name, age, color):
        # super后有一个()
        super().__init__(name, age)
        self.color = color

    def miao(self):
        print(f'我的名字叫{self.name}')


luoxiaohei = Cat('罗小黑', 13, "black")
print(luoxiaohei.age)

异常

try:
#可能产生错误的语句
    cat_age = int(input("please input:\n"))
except ValueError:#ValueError类型:值错误
    print("input illegal\n")
else:
    print('没有错误时执行')
finally:
    print("finally 无论错误与否都执行")

高级函数,函数名作为参数

def my_adder(x, y):
    return x + y

class Cat(Animal):
    # 前后两个下划线,第一个参数是对象本身
    def __init__(self, name, age, color):
        # super后有一个()
        super().__init__(name, age)
        self.color = color

    #my_adder作为函数参数传入
    def cat_adder(self, x, y, my_adder):
        return my_adder(x, y)


luoxiaohei = Cat('罗小黑', 13, "black")
print(luoxiaohei.cat_adder(1, 2, my_adder))

匿名函数

用lambda引导,冒号后只能有一个语句,不用写return

# 匿名函数冒号后只能有一个语句
print(luoxiaohei.cat_adder(1, 2, lambda x, y: x + y))

文件操作以写为例

文件操作前,需要先open打开文件,操作完毕后再close关闭文件

#写入模式w,会清空原有的内容,a追加模式,r+支持读写,追加模式
f=open('./douban_comment.txt','a',encoding='utf-8')
response=requests.get("https://movie.douban.com/",headers=headers)
content=response.text

soup=BeautifulSoup(content,"html.parser")
articles=soup.find_all('p')
for paragragh in articles:
    #print(f'{paragragh.text}\n')
    #写入文件
    f.write(f'{paragragh.text}\n')
#需要关闭文件
f.close()

'''
#不用手动关闭文件的方式
with open('./inTheMoodForLove_comment.txt','w',encoding='utf-8') as f:
    response=requests.get("https://movie.douban.com/review/1570258/",headers=headers)
    content=response.text

    soup=BeautifulSoup(content,"html.parser")
    articles=soup.find('div',attrs={'class':'review-content clearfix'})
    #print(articles.text)
    f.write(f'{articles.text.strip()}\n')
'''

相关推荐

  1. html 基础学习笔记

    2024-04-21 09:04:03       49 阅读
  2. photoshop基础学习笔记

    2024-04-21 09:04:03       42 阅读
  3. Ps基础学习笔记

    2024-04-21 09:04:03       30 阅读
  4. Ps基础学习笔记

    2024-04-21 09:04:03       34 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-21 09:04:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-21 09:04:03       100 阅读
  3. 在Django里面运行非项目文件

    2024-04-21 09:04:03       82 阅读
  4. Python语言-面向对象

    2024-04-21 09:04:03       91 阅读

热门阅读

  1. 使用 Cucumber框架进行BDD测试的一些项目

    2024-04-21 09:04:03       28 阅读
  2. 2024年学习计划

    2024-04-21 09:04:03       30 阅读
  3. Stylus 入门使用方法

    2024-04-21 09:04:03       31 阅读
  4. Stylus入门使用方法

    2024-04-21 09:04:03       44 阅读
  5. stylus入门使用方法

    2024-04-21 09:04:03       40 阅读
  6. leetcode748-Shortest Completing Word

    2024-04-21 09:04:03       31 阅读
  7. 游程编码(Run-Length Encoding, RLE)的python实现

    2024-04-21 09:04:03       24 阅读
  8. 吉林教育报社投稿信箱投稿邮箱

    2024-04-21 09:04:03       28 阅读
  9. 面试 Python 基础八股文十问十答第二期

    2024-04-21 09:04:03       40 阅读