因为我很讨厌java的那种命名方式,学习java感觉到很不习惯,最终还是选择了我最初最想学的python,python目前的就业方向是全栈开发,深度学习,算法,还有数据分析
我选择的是数据分析
今天就来python一天快速入门(本文不做任何的底层分析,只做初印象,能够自己写一些简单代码或者看懂代码)。
国庆之后我会给大家写完python算法的快速入门。大家学完之后,还是能完成力扣难度的简单和中等的算法。十月底我会大家写一些简单的爬虫教学(入门级别)和进行数据挖掘跟数据分析的学习
很底层的东西,我目前也一知半解,底层的东西估计得明年写给大家
安装python和pycharm
这里我就不做教程,csdn上很多我给大家附上链接
【2023版】超详细Python+Pycharm安装保姆级教程,Python环境配置和使用指南,看完这一篇就够了_pycharm python-CSDN博客
如果遇到不会的后台私信我
print("hello world")
编程语言的第一句hello world
a=15
简单快捷粗暴,不需要那么多,直接用等号创建
注:在变量的引入时要先创建变量
number(数字)
、Boolean(布尔)
、String(字符串)
、List(列表)
、Tuple(元组)
、Dictionary(字典)
、Set(集合)
首先我们介绍前三种,后面的有基础之后再做介绍
简单理解来说是能够直接进行数值运算的类型
包括三个 int 整数型,float 浮点型,complex 复数型
a=1 #int #整数型,没有小数点
b=1.5 #float #浮点数 有小数点
c=5+3.0j #复数类型 ,python中j或J表示虚部
#结果
"""
"""
python中只有两个True 和False(一定要首字母大写)
d=True
print(type(d))
#结果
布尔值的作用是主要做返回值或者循环中判断对错时使用,后面会用到
这里做一个简单的例子
print(5>4)
True#结果
简单理解就是一串文字,数字的话不能做字符运算.我们写的'hello world' 就是一段字符串,后面会介绍一些字符串的骚操作,这里只是简单的做个介绍
e='happy brithday'
print(e)
python支持数据数据类型的转换
首先我们来创建几个变量
a='shduah'
b='25525'
c=55
d=55.55
e=True
f=0
t=1
print('a:',type(a))
print('b:',type(b))
print('c:',type(c))
print('d:',type(d))
print('e:',type(e))
print('f:',type(f))
print('t:',type(t))
"""
a:
b:
c:
d:
e:
f:
t:
"""
a=int(a)
报错:ValueError: invalid literal for int() with base 10: 'shduah'
这是shduah这个字段没有数字的意思所以不能转化
b=int(b)
#b: 25525
没有报错,正确转化
a=bool(a)
#a: True
能够进行转化
在字符串转bool时是否都为true呢
a=''
a=bool(a)
#a: False
这里我们记住一个结论,后面判断的时候会用到:
字符串在转化为布尔类型是,为非空字符串为True,空字符串为False
int,float,complex之间的内部转化
# int转float
x = 10
y = float(x)
print(y) # 输出结果为 10.0
# float转int
x = 3.14
y = int(x)
print(y) # 输出结果为 3
# int转complex
x = 5
y = complex(x)
print(y) # 输出结果为 (5+0j)
# complex转int
x = 3+4j
y = int(x.real)
print(y) # 输出结果为 3
# float转complex
x = 3.14
y = complex(x)
print(y) # 输出结果为 (3.14+0j)
# complex转float
x = 2+4j
y = float(x.real)
print(y) # 输出结果为 2.0
x = 10
y = str(x) # 将x转换为字符串类型
print(type(y)) # 输出:
z = bool(x) # 将x转换为布尔类型
print(type(z)) # 输出:
a = 10
b = bool(a)
print(b)
#输出True
这里记住一个结论
非0number转换成bool型都为True
1.加法运算:
a = 5
b = 6
c = a + b
print(c) # 输出11
2.减法运算:
a = 10
b = 3
c = a - b
print(c) # 输出7
3.乘法运算:
a = 7
b = 5
c = a * b
print(c) # 输出35
4.除法运算:
a = 20
b = 5
c = a / b
print(c) # 输出4.0
5.取模运算:
a = 10
b = 3
c = a % b
print(c) # 输出1
6.整除运算:
a = 10
b = 3
c = a // b
print(c) # 输出3
7.幂运算:
a = 2
b = 3
c = a ** b
print(c) # 输出8
相等运算:
a = 5
b = 5
if a == b:
print("a和b相等")
不等运算:
a = 5
b = 7
if a != b:
print("a和b不相等")
大于运算:
a = 5
b = 3
if a > b:
print("a大于b")
小于运算:
a = 5
b = 7
if a < b:
print("a小于b")
大于等于运算:
a = 5
b = 5
if a >= b:
print("a大于等于b")
小于等于运算:
a = 5
b = 7
if a <= b:
print("a小于等于b")
逻辑非运算:
a = True
if not a:
print("a为假")
else:
print("a为真")
逻辑与运算:
a = True
b = False
if a and b:
print("a和b都为真")
else:
print("a和b不都为真")
逻辑或运算:
a = True
b = False
if a or b:
print("a和b中至少有一个为真")
else:
print("a和b都为假")
x = 1
y = 2
z = 3
print((x == y) and (x == z)) # 同真即为真,结果为False
print((x == y) or (x != z)) # 同假即为假,结果为True
print(not (x == y)) # 结果取反,结果为True
a = 10
b = 20
list = [1, 2, 3, 4, 5]
print(a in list) # 如果在指定的序列中找到值返回 True,否则返回 False
print(b not in list) # 如果在指定的序列中没有找到值返回 True,否则返回 False
print(a is list) # 判断两个标识符是不是引用自一个对象,返回True或False
print(a is not list) # 判断两个标识符是不是引用自不同对象,返回True或False
注:列表看不懂先跳过
input函数是我们获取输入的数据的主要函数,他的获取的数据类型永远都是str类型
name = input("请输入你的名字:")
print("欢迎你," + name + "!")
2.使用input函数实现一个简单的加法计算器:
num1 = input("请输入第一个数:")
num2 = input("请输入第二个数:")
result = int(num1) + int(num2)#转化为int类型
print("计算结果为:" + str(result))
3.input的多值获取
方式一、
# 获取多个数值输入
num_list = input("请输入多个数字,以空格分隔:").split()
# 将输入的字符串转换成数字
num_list = [int(num) for num in num_list]
# 打印输入的数字列表
print("你输入的数字是:", num_list)
input函数多个值的获取会生成列表,列表我们后面会讲到
方式二、
>>>x,y=input("请输入x,y值:")
>>>请输入x,y值:ab
>>>x
>>>'a'
>>>y
>>>'b'
回车确认后输入下一个值可以为多个变量赋值
if 语句是进行判断,当判断的表达式为Ture 进行满足条件的运行,否则跳过或进行下一条件的判断
都不满足进行else内部代码
"""
if语句基本格式
if 表达式:
内部代码
elif 表达式:
内部代码
else:
内部代码
"""
1.如果age大于等于18岁,则输出“您已成年”。
if age >= 18:
print("您已成年")
2.如果user输入的密码正确,则输出“登录成功”,否则输出“密码错误”。
if password == "123456":
print("登录成功")
else:
print("密码错误")
3.如果score大于等于90,则输出“恭喜您获得优秀成绩”,如果score大于等于60,则输出“您已通过考试”,否则输出“很遗憾,您未通过考试”。
if score >= 90:
print("恭喜您获得优秀成绩")
elif score >= 60:
print("您已通过考试")
else:
print("很遗憾,您未通过考试")
多层分区判断,先判断第一层if,不满足判断下一层的elif,再不满足,判断下一层eilf,直到没有elif或出现else:完成else的程序退出判断
"""
while基本格式
while 表达式: #表达式为真,进行运行内部代码
内部代码 #内部代码运行后又返回while进行判断
"""
num = 1
while num <= 10:
print(num)
num = num+1
进阶任务:打印一个九九乘法表,打印一个等腰三角形
"""
for 循环基本格式
x开始位置,y表示结束位置,不包括y,z表示步长,i表示循环体从x开始到y结束每次循环结束x+z,
当z=1可省略
for i in range(x,y,z):
内部代码
"""
for i in range(10):
print(i)
2.输出1到10的偶数:
for i in range(2, 11, 2):
print(i)
3.计算1到10的和:
result = 0
for i in range(1, 11):
result += i
print(result)
执行程序中出现continue表示跳过此次循环,
break表示中止循环
1. 字符串不可变类型
2. 字符串是可迭代对象
3. 字符串支持索引和切片操作
4. 支持操作符; 拼接:+
重复操作符:*
比较运算符: > < <= >= == !=
逻辑运算符:not and or 成员关系: in not in
%s
表示字符串格式化,对应的变量为 name
。%d
表示整数格式化,对应的变量为 age
。%.2f
表示浮点数格式化(保留两位小数),对应的变量为 height
。%
后面的括号中依次填入需要格式化的变量,用逗号隔开。name = "小明"
age = 18
height = 1.7
print("我叫 %s,今年 %d 岁,身高 %.2f 米。" % (name, age, height))
format()
方法进行字符串格式化
name = "小明"
age = 18
height = 1.7
print("我叫 {},今年 {} 岁,身高 {:.2f} 米。".format(name, age, height))
我叫 小明,今年 18 岁,身高 1.70 米。
list=[] #不带值
list=[1,2,3] #带值创建
1.列表的元素:列表所储存的值
2.列表的索引:列表所储存的值的位置,头部从0开始,下一个元素位置0+1
尾部开始时是-1。下一个元素位置(-2)-1-1
3.列表的本身 列表本身也是个值
1.添加数据
list.append(obj) #向末尾添加obj元素
list=[]
list.append(1)
2.插入元素
list.insert(weizhi,obj)
list.insert(0,5)#5插入在0位置
3.替换元素
list[index]=x#index 下标,x替换的值
4.删除
list.pop(index)#填index,删除下标为index的元素,不填,默认删除最后一个元素
list。remove(x)#删除指定的元素
5.切片
list[x:y]#列表的切片默由x开始,不包括y结束
# 创建一个空字典
my_dict = {}
# 创建一个包含键值对的字典
my_dict = {'apple': 2, 'banana': 3, 'orange': 1}
不做花里胡哨,字典就是值的映射,简单理解就是字典中拼音跟字进行的一对一对应,找到a就能直接找到b
# 获取字典中某个键的值
my_dict['apple'] # 返回 2
# 获取字典中所有键
my_dict.keys() # 返回 ['apple', 'banana', 'orange']
# 获取字典中所有值
my_dict.values() # 返回 [2, 3, 1]
# 获取字典中所有键值对(以元组形式返回)
my_dict.items() # 返回 [('apple', 2), ('banana', 3), ('orange', 1)]
# 添加元素
my_dict['grape'] = 4 # 添加键为 'grape',值为 4 的元素
# 修改元素
my_dict['banana'] = 5 # 将键为 'banana' 的元素的值修改为 5
# 删除指定键的元素
del my_dict['orange'] # 删除键为 'orange' 的元素
# 清空字典
my_dict.clear() # 删除字典中所有元素
简单来说,就是封装的一堆代码,方便调用,减少重复代码
def name(x,y):
代码块
return z
"""
x,y都是参数,从外部输入,没有可以不写
在代码块处使用
函数内为局部参数,只在函数内部生效
函数外为全局参数
调取是优先调取局部参数,未找到,然后调用全局参数
如果没有返回值可以不用写
"""
name(x,y)#调用函数
有参数
def say_hello():
print("Hello!")
say_hello() # 输出:Hello!
无参数
def say_hello(name):
print("Hello, " + name + "!")
say_hello("Bob") # 输出:Hello, Bob!
有返回值
def add_numbers(x, y):
sum = x + y
return sum
result = add_numbers(5, 10)
print(result) # 输出15
在 Python 中,参数是函数或方法中的输入值,它们提供了一种将数据传递到函数中的方式。参数可以分为两种类型:位置参数和关键字参数。
位置参数是按照函数定义中的顺序传递的参数。例如,下面的函数中,a 和 b 是位置参数:
def add(a, b):
return a + b
可以像这样调用函数:
add(3, 5)
关键字参数是通过指定参数名称来传递的参数。例如,下面的函数中,a 和 b 是位置参数,而 c 是关键字参数:
def add(a, b, c=0):
return a + b + c
可以像这样调用函数:
add(3, 5, c=2)
在这个例子中,a 和 b 是位置参数,而 c 是一个可选的关键字参数,默认值为 0。如果不指定 c 的值,它将使用默认值。
另外,Python 还支持不定长参数,包括可变长位置参数和可变长关键字参数。可变长位置参数是指在函数中处理任意数量的位置参数,例如:
def add(*args):
result = 0
for num in args:
result += num
return result
可以像这样调用函数:
add(3, 5, 7)
在这个例子中,函数 add 接受任意数量的位置参数,并将它们加起来。
可变长关键字参数是指在函数中处理任意数量的关键字参数,例如:
def process(**kwargs):
for key, value in kwargs.items():
print(f"{key}: {value}")
可以像这样调用函数:
process(name="Alice", age=25, city="New York")
在这个例子中,函数 process 接受任意数量的关键字参数,并将它们输出到控制台。
在 Python 中,参数是函数或方法中的输入值,它们提供了一种将数据传递到函数中的方式。参数可以分为两种类型:位置参数和关键字参数。
位置参数是按照函数定义中的顺序传递的参数。例如,下面的函数中,a 和 b 是位置参数:
def add(a, b):
return a + b
可以像这样调用函数:
add(3, 5)
关键字参数是通过指定参数名称来传递的参数。例如,下面的函数中,a 和 b 是位置参数,而 c 是关键字参数:
def add(a, b, c=0):
return a + b + c
可以像这样调用函数:
add(3, 5, c=2)
在这个例子中,a 和 b 是位置参数,而 c 是一个可选的关键字参数,默认值为 0。如果不指定 c 的值,它将使用默认值。
另外,Python 还支持不定长参数,包括可变长位置参数和可变长关键字参数。可变长位置参数是指在函数中处理任意数量的位置参数,例如:
def add(*args):
result = 0
for num in args:
result += num
return result
可以像这样调用函数:
add(3, 5, 7)
在这个例子中,函数 add 接受任意数量的位置参数,并将它们加起来。
可变长关键字参数是指在函数中处理任意数量的关键字参数,例如:
def process(**kwargs):
for key, value in kwargs.items():
print(f"{key}: {value}")
可以像这样调用函数:
process(name="Alice", age=25, city="New York")
在这个例子中,函数 process 接受任意数量的关键字参数,并将它们输出到控制台。
最后这里布置一个小作业,写一个名片管理系统
最后完成这样子就好了,
名片管理系统_哔哩哔哩_bilibili只是实现简单功能, 视频播放量 1、弹幕量 0、点赞数 0、投硬币枚数 0、收藏人数 0、转发人数 0, 视频作者 柯洁不拿第九冠不改名, 作者简介 柯洁不拿第九冠不改名,四摸一,听闻时间何许,相关视频:MZMusic的又一更新,Github开源音乐软件,【动画密码学】DES,Julia in 100 Seconds,C++ Primer Plus 第6版 中文版,Java面试 | 在Spring Boot中,如何自定义Starter组件?,基于layui+vue3桌面端经典组件库Layui-Vue3,青语言V1.0正式发布啦,【捡到宝啦】史上最伟大的网站发现!文献综述再也不是事儿!,【2023最新版】Android Studio 安装 Android开发从零基础安装到精通全套课程(保姆级超级详细,150集持续更新),Docker详解,7分钟学会https://www.bilibili.com/video/BV1MF411U71F/