python小基础-更多请自学,或者某某教程-2023-2-21 小扒菜的自学之路【1】

news2024/10/7 18:29:10

python基础

基础学习 自己跟着菜鸟教程看的一些基础,会java或者js的话,1个半小时就可以over

好久没更新博客了,现在慢慢来发吧,基础内容不太多,自己理解会很快的(下面是一段个人的小经历,大家也可以看看,嘻嘻)

假期看了灵魂摆渡几部电视剧,无聊中收到了一个python爬虫公开课穷,没钱只能自己蹭免费的,然后加上自己在java的安卓浏览器上的研究,进入了python爬虫的学习

所谓爬虫就是获取网络数据,进行本地应用操作,当然小的爬虫可以学习,太深的国家饭管饱(请不要入戏太深 >_< !!!)

基础笔记(可能有很多中文,主要是为了更加清晰,强迫症请去看其他的教程,谢谢)

test.py(别忘了第二个代码块的mymodule.py <_<,可能写的不全,不是太基础,其他更加基础的,就去菜鸟教程学习吧)

C:\Users\26462\Desktop\Python.md这个路径自己填个自己的文本路径测试就行,输出日志里也有一些分割线哦~

日志效果,有的没调用,自己试试吧

在这里插入图片描述

在这里插入图片描述

# -*- coding: UTF-8 -*-
# 避免中文乱码
print("中文测试")

#判断1
if 6<2:
    print("正确")
else:
    print("错误")

#跳过截取
list1 = ["我","是","个","极","客"]
print(list1)
print(list1[0:3:2])

#类似Map数组
tinydict = {'name': 'runoob', 'code': 6734, 'dept': 'sales'}
print(tinydict)
print(tinydict.keys())
print(tinydict.values())


#分割线
print("\n\n\n\n\n\n\n\n\n\n======================================================\n\n\n")

#强转类型
result_=int(6.6)
print(result_)

#复数
复数 = complex(0,1) #实部和虚部
print(复数)

#动态解释器
print(eval("6*9*6"))

#转化为数组
aTuple = (123, 'runoob', 'google', 'abc')
print(tuple(aTuple)) #将序列 s 转换为一个元组
list2 = list(aTuple)
print(list2) #将序列 s 转换为一个列表
a =123
b=666

if (a in list2):
    print("1 - 变量 a 在给定的列表中 list 中")
else:

    print("1 - 变量 a 不在给定的列表中 list 中")

if (b not in list2):

    print("2 - 变量 b 不在给定的列表中 list 中")
else:

    print("2 - 变量 b 在给定的列表中 list 中")


#Set数组
x = set('runoob')
y = set('google')
print(x)
print("交集",x&y)
print("并集",x|y)
print("差集",x-y) #差集就是说前者里有,而后者没有的
print("补集",x^y) #互相不包括



print("\n\n字典=================")
#字典
numbers = dict(_x=5, _y=0)
print('numbers =', numbers)
print(type(numbers))

empty = dict()
print('empty =', empty)
print(type(empty))


# zip() 创建可迭代对象
numbers3 = dict(zip(['x', 'y', 'z'], [1, 2, 3]))
print('numbers3 =',numbers3)



#分割线
print("\n\n\n\n\n\n\n\n\n\n运算======================================================\n\n\n")
print(2 ** 3) #取幂:   2的3次方
print(19%2)#取模:   19/2=9......1
print(19//2)#取整除 - 返回商的整数部分(向下取整)
print(-19//2)#取整除 - 返回商的整数部分(向下取整)



#分割线
print("\n\n\n\n\n\n\n\n\n\n条件和循环======================================================\n\n\n")
print(1<=2&2<4)

count = 0
while (count < 9):

    print('The count is:', count)
    count+=1

print("Good bye!")

#-------------------------------------发现python里的end/{}就是根据     最近的缩进     来判定的

#以上的无限循环你可以使用 CTRL+C 来中断循环。


for letter in 'Python':  # 第一个实例
    print("当前字母: %s" % letter)

fruits = ['banana', 'apple', 'mango']
for fruit in fruits:  # 第二个实例
    print('当前水果: %s' % fruit)

print("Good bye!")
print( r'\n')




list = []          ## 空列表
list.append('Google')   ## 使用 append() 添加元素
list.append('Runoob')
del list[1]
print(list)

#新的数组
list = ['Hi!'] * 4 #同一个元素,在列表里添加多次
print(list)

length = len(list) #返回数组的长度
print("当前数组的长度:%d 输出成功!"%length)

print("统计 Hi! 元素在列表中出现的次数,为%d次"%list.count("Hi!")) #必须是某一个对应元素,直接是 Hi 查不到,返回0

list2 =["测试新数组"]*6
list2.remove('测试新数组') #移除第一个匹配项
del list[1] #移除某个序号的元素
list.extend(list2) #将list2叠加到list里,合并数组
list.reverse()
# 反向列表中元素

print(list)



#分割线
print("\n\n\n\n\n\n\n\n\n\n定义函数库的引入======================================================\n\n\n")

import time as 时间

当前时间 = 时间.localtime(时间.time())

localtime = 时间.asctime(当前时间)
print(localtime) #直接获取


# 格式化成2023-01-10 18:47:20形式
time1 = 时间.strftime("当前时间%Y-%m-%d %H:%M:%S is %j day in a new year \n\n==>当前时间: %X %Z  %Y %x" , 时间.localtime())
print(time1) #转化格式

print("\n\n\n")
import calendar as 日历
print(time1+"获取本月的日历:-----------------------------")
cal = 日历.month(int(时间.strftime("%Y",时间.localtime())), int(时间.strftime("%m",时间.localtime())))
print(cal)



# 定义函数
def printme( str ):
    print(str)
    return
printme( str= "打印任何传入的字符串")


#定义模块 module
import mymodule
mymodule.测试("牛逼666")

print(mymodule.get(10, 20))




#分割线
print("\n\n\n\n\n\n\n\n\n\nIO流======================================================\n\n\n")

#获取控制台输入内容,并返回
# str = input("请输入:")
# print("你输入的内容是: ", str)


#读取
# fileName = "C:\\Users\\26462\\Desktop\\新建文本文档 (2).txt"
# fo = open(fileName,"r+")
# print("文件内容:",fo)
# print(fo.name)
# print("是否已关闭 : ", fo.closed)
# print("访问模式 : ", fo.mode)
# #读
# str = fo.read(6)
#
# # 查找当前位置
# position = fo.tell()
# print("当前文件位置 : ", position)
#
# # 把指针再次重新定位到文件开头
# position = fo.seek(2)
# str = fo.read(4)
# print("重新读取字符串 : ", str)
#
# print(str)
#
#
#
#
#
# # 关闭打开的文件
# fo.close()



import os
# os.rename(fileName,"C:\\Users\\26462\\Desktop\\Python重命名.md")
# print("是否已关闭 : ", fo.closed)


str1 = "Python666啊"
# os.remove("C:\\Users\\26462\\Desktop\\Python重命名.md")
# os.mkdir("文件夹") #在当前目录下创建文件夹
# os.chdir("newdir") #修改当前文件夹名字
print(os.getcwd()) # 给出当前的目录

fo = open("C:\\Users\\26462\\Desktop\\Python重命名.md","w+",2048,"utf-8")
fo.write(str1)
print("当前目录:",fo.tell())
fo.close()



#自定义异常    raise Networkerror("Bad hostname") 调用
class Networkerror(RuntimeError):
    def __init__(self, arg):
        self.args = arg


try:
    fh = open("C:\\Users\\26462\\Desktop\\Python.md","r+",2048,"utf-8")
    try:
      fh.write("这是一个测试文件,用于测试异常!!")
    finally:
      fh.close()
      print("文件流操作已关闭")
except IOError:

    print("Error: 没有找到文件或读取文件失败")
else:
    print("写入成功!")

# print()





#分割线
print("\n\n\n\n\n\n\n\n\n\n面向对象======================================================\n\n\n")
# 创建类
class:
    '这是一个自定义的类'
    count = 0 #记录当前序号

    def __init__(self,name,value):
        self.name = name
        self.value  = value
        类.count +=1

    def getCount(self):
        print(self.name+"当前序号:"+str(.count))
        return count
    def getValue(self):
        print(self.name+"当前值:"+str(self.value))
        return self.value
    def __del__(self):
        class_name = self.__class__.__name__
        # print(class_name, "销毁")



对象1 =("星辰北天",666)
print("类的文档.__doc__:",.__doc__)
print("类的名字.__name__:",.__name__)
print("类的模块.__name__:",.__module__)
print("类的基础.__bases__:",.__bases__)
print("类的字典.__dict__:",.__dict__)
对象1.getCount()
对象1.getValue()

print("类的ID.__dict__:", id(对象1))
对象1.__del__()



#分割线
print("\n\n\n\n\n\n\n\n\n\n正则表达式======================================================\n\n\n")

#正则表达式
import re


print(re.match('www', 'www.runoob.com').span())  # 在起始位置匹配
print(re.match('com', 'www.runoob.com'))         # 不在起始位置匹配


line = "Cats are smarter than dogs"

matchObj = re.match(r'(.*) are (.*?) .*', line, re.M | re.I)

if matchObj:
    print("matchObj.group() : ", matchObj.group())
    print("matchObj.group(1) : ", matchObj.group(1))
    print("matchObj.group(2) : ", matchObj.group(2))
else:
    print("No match!!")



print(re.search('www', 'www.runoob.com').span())  # 在起始位置匹配
print(re.search('com', 'www.runoob.com').span())         # 不在起始位置匹配

# re.match只匹配字符串的开始,如果字符串开始不符合正则表达式,则匹配失败,函数返回None;而re.search匹配整个字符串,直到找到一个匹配。


mymodule.py

def 测试(str):
    print("回调:"+str)
    return


def get(a,b):
    return "回调:"+str(a*b)

因为现在大二了,现在学业多,而且编程不是自己的专业,所以先发一篇,挂个标题,慢慢的更新更多的,尽情期待>_<!!!

给个支持关注一下,点个赞也行(嘻嘻)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/362792.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

华为OD机试 - 考古学家(C++) | 附带编码思路 【2023】

刷算法题之前必看 参加华为od机试,一定要注意不要完全背诵代码,需要理解之后模仿写出,通过率才会高。 华为 OD 清单查看地址:https://blog.csdn.net/hihell/category_12199283.html 华为OD详细说明:https://dream.blog.csdn.net/article/details/128980730 华为OD机试题…

外贸人如何利用领英LinkedIn开拓海外市场?这七大妙招你要知道

在社交媒体大行其道的时代下&#xff0c;作为职场人士专用的LinkedIn&#xff08;领英&#xff09;在全球则拥有5亿高端会员&#xff0c;覆盖全球200多个国家&#xff0c;也是唯一一个在中国不受限制的国外社交平台&#xff0c;与Facebook、谷歌、苹果并称为“硅谷四巨头”。 …

二倍均值随机算法之抢拼手气红包场景应用

拼手气类的游戏&#xff0c;更能激发用户购物和社交的趣味性&#xff0c;以及游戏竞争心理&#xff0c;拼手气类的活动甚至可以影响人们消费心理。 拼手气红包就是最简单的例子&#xff0c;哪怕你手气红包只有0.01元&#xff0c;在众多竞争者中脱颖而出&#xff0c;抢到的那一刻…

Elasticsearch7.8.0版本进阶——多文档操作流程

目录一、多文档操作1.1、多文档操作的概述1.2、多文档操作与单文档模式区别二、用单个 mget 请求取回多个文档2.1、用单个 mget 请求取回多个文档的图解2.2、用单个 mget 请求取回多个文档的步骤三、bulk API 的模式请求取回多个文档3.1、bulk API 的模式请求取回多个文档的图解…

优炫数据库百城巡展,成都首站圆满举行

2月17日&#xff0c;由四川省大数据发展研究会、北京优炫软件股份有限公司联合举办的“首届四川省推进信息技术应用创新产业服务研讨会暨优炫数据库百城巡展成都首站隆重举行。此次活动是优炫数据库百城巡展的起点站&#xff0c;更是国产数据库市场美好乐章的一次强力鸣奏。 来…

HarmonyOS Connect认证测试

在HarmonyOS Connect生态产品的认证测试过程中&#xff0c;你是否存在这些疑问&#xff1a;认证流程具体包括哪些操作环节&#xff1f;如何根据实际场景选择合适的认证方式&#xff1f;如何选择认证测试标准的版本…… 本期FAQ为大家带来HarmonyOS Connect认证测试的常见问题…

ChatGPT类工具如何实现「降维打击」| 聊天机器人闭门研讨观点总结

导读随着ChatGPT出现&#xff0c;语言大模型的进步与对话交互方式相结合&#xff0c;正在搅动科研、产业&#xff0c;以及普通人的想象力。我们对智能的探索是正在步入决胜之局&#xff0c;还是仍在中场酣战&#xff1b;是需要精巧完备的一致系统&#xff0c;还是可以遵循实效至…

什么是网站ICP备案,什么样的网站需要办理ICP?

进入互联网时代&#xff0c;企业业务的展开或多或少都要接触网络&#xff0c;甚至也会在线上建立公司的业务平台。很多企业会选择建立一个网站来直接展现公司面貌和业务。在我们完成了搭建好网站的全部内容后&#xff0c;最重要的一步&#xff1a;在网站建成进入到上线展现时&a…

【无标题】10.货币系统

题目描述: 在网友的国度中共有 n 种不同面额的货币&#xff0c;第 i 种货币的面额为 a[i]&#xff0c;你可以 假设每一种货币都有无穷多张。为了方便&#xff0c;我们把货币种数为 n、 面额数组为 a[1..n] 的货币系统记作 (n,a)。 在一个完善的货币系统中&#xff0c;每一个非…

TCP/IP网络编程——关于 I/O 流分离的其他内容

完整版文章请参考&#xff1a; TCP/IP网络编程完整版文章 文章目录第 16 章 关于 I/O 流分离的其他内容16.1 分离 I/O 流16.1.1 2次 I/O 流分离16.1.2 分离「流」的好处16.1.3 「流」分离带来的 EOF 问题16.2 文件描述符的的复制和半关闭16.2.1 终止「流」时无法半关闭原因16.2…

Python 之 Pandas 时间函数 time 、datetime 模块和时间处理基础

文章目录一、time 模块1、时间格式转换图2. struct_time 元组元素结构3. format time 结构化表示二、datetime 模块1. date类2. 方法和属性3. datetime 类三、timedelta 类的时间加减四、时间处理基础Python 中提供了对时间日期的多种多样的处理方式&#xff0c;主要是在 time …

Spring架构篇--2.4 远程通信基础--Socket通信

前言&#xff1a;通信中我们常常建立socket 通过其tcp完成通信&#xff1b; 1 Socket 介绍&#xff1a; 所谓socket 通常也称作”套接字“&#xff0c;用于描述IP地址和端口&#xff0c;是一个通信链的句柄。应用程序通常通过”套接字”向网络发出请求或者应答网络请求&#…

四色菊皇家大学-BCG U2T产品宣传活动

BCG U2T产品的宣传和介绍。 2023年2月16日&#xff0c;四色菊皇家大学艺术文化中心&#xff0c;高等教育、科学、研究和创新部长Dnuch Tantodtit博士主持了BCG U2T产品的市场推广项目。四色菊皇家大学校长Saksit Anganaphanayakorn博士&#xff0c;以及U2T项目的管理人员、教职…

Ubuntu16.04使用apache创建个人用户主页并添加口令认证

文章目录一.安装apache二、apache文件和目录简述2.1 网站数据目录2.2 Apache配置文件三、创建个人用户主页3.1 开启个人用户主页功能3.2 建立目录和首页面3.3 开启模块3.4 测试四、添加口令认证4.1 生成密码数据库4.2 修改配置文件一.安装apache 创建虚拟机&#xff0c;保持默…

代码随想录【Day21】| 530. 二叉搜索树的最小绝对差、501. 二叉搜索树中的众数、236. 二叉树的最近公共祖先

530. 二叉搜索树的最小绝对差 题目链接 题目描述&#xff1a; 给你一棵所有节点为非负值的二叉搜索树&#xff0c;请你计算树中任意两节点的差的绝对值的最小值。 示例&#xff1a; 提示&#xff1a;树中至少有 2 个节点。 难点&#xff1a; 解答错误&#xff01;仅考虑了…

2023年软件测试工程师怎样跳槽,才能越跳越值钱?

2023年就业难&#xff1f;可那个转行干软件测试的小哥哥才刚拿到2W薪资的offer&#xff0c;紧接着又跳槽去了大厂 作为软件测试工程师怎样跳槽才能越跳越值钱呢&#xff1f; 把控好跳槽频次 我们在编写简历的时候&#xff0c;总想尽可能展示出自己的技能&#xff0c;但是简历上…

【基础算法】数的范围

&#x1f339;作者:云小逸 &#x1f4dd;个人主页:云小逸的主页 &#x1f4dd;Github:云小逸的Github &#x1f91f;motto:要敢于一个人默默的面对自己&#xff0c;强大自己才是核心。不要等到什么都没有了&#xff0c;才下定决心去做。种一颗树&#xff0c;最好的时间是十年前…

尚医通 (二十一)预约下单

目录一、预约下单功能(一)1、需求2、搭建订单模块3、封装Feign调用获取就诊人接口4、封装Feign调用获取排班下单信息接口二、预约下单功能(二)1、实现生成订单接口三、预约下单功能(三)四、预约下单功能(四)1、生成订单后处理逻辑-封装短信接口2、生成订单后处理逻辑-更新排班数…

Allegro误删器件位号如何快速刷新回来操作指导

Allegro误删器件位号如何快速刷新回来操作指导 在用Allegro做PCB设计的时候,有时会因为误操作,把需要的丝印位号删除了,如果想把位号复原回来,可以把当前器件删除,再重新放置即可。 下面介绍在不删除器件的情况下也能快速刷新回来的方法 如下图 误操作前 误操作后,位号…

Vue3+Ts+Vite开发插件并发布到npm

依赖版本信息如下&#xff1a; "vue": "^3.2.45""typescript": "~4.7.4""vite": "^4.0.0""less": "^4.1.3""terser": "^5.16.4"npm: 8.1.0node: 16.13.0 目标&#xf…