Python概述

一、概念
1.python概述
Python 是一门优雅而健壮的编程语言,它继承了传统编译语言的强大性和通用性,同时也借鉴了简单脚本和解释语言的易用性。人生苦短,我用Python。
因为Python之父Guido非常喜欢Monty Python(一个英国六人喜剧团体,喜剧界的披头士),所以就给这个编程语言起名为Python。

2.下载和安装python

在官网里可以下载安装python
在这里插入图片描述linux系统自带python2解释器,python2和python3解释器是有差别的

这里重点讲在linux重安装python3.7解释器

1). 解压安装包到指定目录
在linux系统建立yum源,然后把安装过程中所依赖的依赖包都安装了
2). 安装编译过程中需要的依赖包(gcc, zlib, zlib-devel, openssl-devel )
3). 进入解压的安装包进行编译
./configure --prefix=/usr/local/python --with-ssl
4). 安装
make && make install
此时就算安装了python,当你在shell里输入python时你就会进入python2里,因为系统自带python2,想要用命令直接进入python3环境里就要添加python3命令到环境变量中。
5). 添加py3命令到环境变量PATH
临时添加: export PATH=“py3命令所在的路径:$PATH”
永久添加:
echo export PATH=“py3命令所在的路径:$PATH” >> ~/.bashrc
source ~/.bashrc

此时你再到shell里输入python,就会进入python2的环境里,输入python3就会进入python3环境里

在交互式环境中:
在这里插入图片描述
在文本环境中:
在这里插入图片描述
1). 指定python解释器
#!/usr/bin/python
#!/usr/bin/env python
2). 字符编码:
#encoding:utf-8
#coding:utf-8
ASCII只能识别英文
UTF-8 是「编码规则」, 可以识别中文和英文.

然而我们在做项目时代码量是非常大的,在交互式或文本环境中写代码是非常不方便的,所以我们就需要一个可以提高我们开发效率的工具来辅助我们。
PyCharm集成化工具
PyCharm是一种Python IDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制。此外,该IDE提供了一些高级功能,以用于支持Django框架下的专业Web开发。

下载地址: https://www.jetbrains.com/pycharm/download/
在这里插入图片描述
3.python对象

  • 变量是内存中的一块区域。对象赋值实际上是对象的引用。a=10
  • 变量的命名: 变量名由字母,数字,下划线组成, 不能以数字开头. (a,b, c)
    hello = 100, hello_world = 100, count2 =100
  • Python中,变量定义时不需要指定类型的,当用变量的时候,必须要给这个变量赋值,赋值后会自动给变量类型;
    在这里插入图片描述
    python支持五种基本数字类型
    在这里插入图片描述

注意:
1). 整数一般以十进制表示,但是 Python也支持八进制(“0”开始)或十六进制(“0x” 或“0X” 开始)来表示整数。
2). 整数的范围取决于机器是32位还是64位? 但长整数不是, 取决于虚拟内存的大小.可以用type()查看变量的具体类型,python3中把int和long合并为int型。

运算符
1). 算术运算符:+,-,*,**, /, %, //
2). 赋值运算符:=, +=, -=, /=, *=, %=
3). 关系运算符: >, >=, <, <=, !=, ==
4). 逻辑运算符:逻辑与and, 逻辑或or, 逻辑非not
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
数值类型标准类型函数
1). 标准类型函数(cmp, str和 type): 可以用于所有的标准类型。
2). 转换工厂函数(int, long, float, bool和 complex)
3). 功能函数(abs, divmod, pow和 round)
4). 进制转换函数(hex, oct)
5). ASCII转换函数(chr, ord)

相关拓展模块:
decimal, array, math, random
4.三大流程控制
在这里插入图片描述
python 有两大特性, 一是简洁,二是可读性好。Python代码块缩进完全能够清楚地表达一个语句属于哪个代码块。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
for循环语句语法结构
与传统语言(e.g.C/C++,Java )中的 for 语句不同, Python 的 for语句更加简洁.
for循环原理(有概念即可, 讲生成器时详细说):
可以遍历序列成员, 可以用在 列表解析 和 生成器表达式中, 它会自动地调用迭代器的 next()
方法, 捕获 StopIteration 异常并结束循环(所有这一切都是在内部发生的).
在这里插入图片描述
range() 内建函数
range(start, end, step =1)返回一个包含所有 k 的列表, start <= k < end , k每次递增 step

跳出循环语句break 语句和continue 语句
break语句用来终止循环语句,即循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句。
continue 跳过当前循环的剩余语句,然后继续进行下一轮循环。
在这里插入图片描述
二、实战练习
1.最大公约数和最小公倍数.
输入两个数值, 求两个数的最大公约数和最小公倍数.
代码:

 num1 = int(input("请输入第一个数:"))
 num2 = int(input("请输入第二个数:"))
 x = num1 * num2
 if num1 != 0 and num2 != 0:
  if num1 > num2:
    num3 = num1 % num2
    while (num3 != 0):
        num1 = num2
        num2 = num3
        num3 = num1 % num2
    else:
        print("%s为最大公约数" % num2)
        lcm = x // num2
        print('%s为最小公倍数' % lcm)
else:
    num = num1
    num1 = num2
    num2 = num
    num3 = num1 % num2
    while (num3 != 0):
        num1 = num2
        num2 = num3
        num3 = num1 % num2
    else:
        print("%s为最大公约数" % num2)
        lcm = x // num2
        print('%s为最小公倍数' % lcm)
else:
     print("Error,输入不能为0!")

运行截图:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2. x 的平方根.
实现int sqrt(int x)函数。
计算并返回x的平方根,其中x是非负整数。
返回类型是整数,结果只保留整数部分,小数部分将被舍去。
代码:

import math
num = int(input("输入:"))
if num < 0:
    print('Error:数字小于0')
else:
    x = math.sqrt(num)
    print('输出:%d'%x)

运行截图:
在这里插入图片描述
在这里插入图片描述

3. 求解一元二次方程.
代码:

 import math
 a = int(input('请输入二次幂系数:'))
 b = int(input('请输入一次幂系数:'))
 c = int(input('请输入常数:'))
 d = b**2-(4*a*c)
 if d < 0:
     print("改方程无解!")
 else:
    if d ==0:
        x = (math.sqrt(d)-b)/(2*a)+(math.sqrt(d)-b)%(2*a)
        print('此方程有唯一解:%s'%x)
    else:
        x1 = (-b+math.sqrt(d))/(2*a)+(-b+math.sqrt(d))%(2*a)
        x2 = (-b-math.sqrt(d))/(2*a)+(-b-math.sqrt(d))%(2*a)
        print('此方程有俩个解:%s,%s'%(x1,x2))

运行截图:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值