返回顶部
首页 > 资讯 > 后端开发 > Python >【Python3】初识Python、基
  • 451
分享到

【Python3】初识Python、基

Python 2023-01-31 08:01:06 451人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

1. python介绍 发展史等等.... 减少开发成本 2. Python与其他语言对比 C语言:代码-->机器码 其他高级语言:代码-->字节码-->机器码 3. python种类 cpython:常用的py

1. python介绍

  • 发展史等等....

  • 减少开发成本

2. Python与其他语言对比

  • C语言:代码-->机器码

  • 其他高级语言:代码-->字节码-->机器码

3. python种类

cpython:常用的python就是cpython,python代码-->字节码-->机器码(一行一行读取执行)
其他python:python代码-->字节码-->机器码
pypy:python代码-->字节码-->机器码(全部转换完再执行)pypy效率会比cpython要高,pypy是cpython的一个分支,关于pypy可参考知乎一篇文章:PyPy 为什么会比 CPython 还要快?

4. Python基础

4.1 解释器:

python解释器+文件:c:python3.5python.exe d:s17day01helloworld.py
python解释器内执行:c:python3.5python.exe

linux or Mac
python解释器+文件:/usr/bin/python /data/s17/day01/helloworld.py
python解释器内执行:/usr/bin/python

注: 在linux or mac系统上默认安装的是python2.x版本,如在linux or mac系统使用python,需注意下python版本。

  • 潜规则
    .py 结尾(当然你也可以采用其他的结尾也是可以的,不怕team成员杀了你也可以写。其实主要还是为了规范,python服务器上用的比较多,看见.py也就会知道这是python程序)

  • 编码
    编码发展:ASCII-->Unicode(万国码)-->UTF-8

编码种类与区别

编码 支持语言 字节位数 缺点 备注
ASCII 英语 8位 只支持英文 *
万国码 所有 至少16位 字节位数较大 *
UTF-8 所有 8+ * 对万国码压缩
GBK 中文、英文 16位 支持语言少 *

python编码相关:

  • 文件编码

    文件编码创建文件时定义即可,或者在IDE中定义
    
  • 解释器编码

    解释器编码需要在代码中标注,python3.x 版本不标注也是可以的(解释器默认编码为ASCII),但为了统一规范,在文件第二行标注  `# -*- coding:utf-8 -*-`
    

5. IDE

PyCharm

  • 使用

    a.创建一个项目,指定代码路径与python解释器路径
    b.创建一个文件夹
    c.创建一个python script 文件
    d.在py文件中右键, run xx.py
    
  • 文件编码
    在pycharm中首先要设置文件编码,将文件默认文件编码设置为utf-8

  • 文件模板
    修改python scripts文件模板,将python环境信息与编码信息定义在模板中

  • 改变大小
    配置编辑器中文字大小,设置可以用鼠标滑轮控制文字大小

6. 注释

  • 单行注释: #

  • 多行注释: ``` ```

7. .pyc文件

当一个python文件导入另一个模块时候,会生成一个 .pyc文件,那么这个文件就是导入的那个文件的字节码。

8. 变量

python变量规则:

  • 字母

  • 数字(变量不能以数字开头)

  • 下划线

  • 不能以python内置关键字为变量

  • python中变量建议使用下划线分割(驼峰式也不会报错)

9. 输入、输出

  • 输入: a = input('请输入xxxx')

  • 输出: print (a)

10. 条件语句

  • 例1:

if 条件:
    ...
else:
    ...
  • 应用

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Author:Chuncheng.Fan <xmzncc@gmail.com>

username = input("请输入用户名:")
passWord = input("请输入密码:")


if username  == 'fcc' and password == '123':
    print("欢迎登陆!")
else:
    print("用户名或密码错误!")
  • 例2:

if 条件:
    ...
elif 条件:
    ...
else:
    ...   
  • 应用:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Author:Chuncheng.Fan <xmzncc@gmail.com>

sex = input("请输入你的性别:")

if sex == "男":
    print("傻x,自己性别都忘了!")
elif sex == "女":
    print("...你在想想,你忘了你已经做了手术了吗...")
else:
    print("人妖.......")

11. 循环语句

  • while

while 条件:
    continue # 开始下一次循环
    break # 跳出所有循环
  • 例:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Author:Chuncheng.Fan <xmzncc@gmail.com>

i = 0
while i < 3:
    username = input("请输入用户名:")
    password = input("请输入密码:")
    if username == 'fcc' and password == '123':
        print("欢迎登陆!")
        break
    else:
        print('用户名或密码错误')
        i += 1

12. 练习

    1. 使用while循环输入 1 2 3 4 5 6 8 9 10

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Author:Chuncheng.Fan <xmzncc@gmail.com>

i = 1
while True:
    if i == 7:
        i += 1
        continue
    print(i)
    i += 1
    if i == 11:
        break
    1. 求1-100的所有数的和

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Author:Chuncheng.Fan <xmzncc@gmail.com>

value = 0
i = 1
while i < 101:
    value = value + i
    i += 1
print(value)
    1. 输出 1-100 内的所有奇数

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Author:Chuncheng.Fan <xmzncc@gmail.com>

i = 1

while i < 101:
    if i % 2 == 1:
        print(i)
    i += 1
    1. 输出 1-100 内的所有偶数

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Author:Chuncheng.Fan <xmzncc@gmail.com>

i = 1

while i < 101:
    if i % 2 == 0:
        print(i)
    i += 1
    1. 求1-2+3-4+5 ... 99的所有数的和

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Author:Chuncheng.Fan <xmzncc@gmail.com>

value = 0
i = 1

while i < 100:
    if i % 2 == 1:
        value = value + i
        i += 1
    elif i % 2 == 0:
        value = value - i
        i +=1
print(value)
    1. 用户登陆(三次机会重试)

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Author:Chuncheng.Fan <xmzncc@gmail.com>

i = 0

while i < 3:
    username = input("请输入用户名:")
    password = input("请输入密码:")
    if username == 'fcc' and password == '123':
        print("欢迎登陆!")
        break
    else:
        print("用户名或密码错误")
        i += 1

13. 运算符

13.1 算数运算

运算符 描述 实例
+ 加 - 两个对象相加 a+b 输出结果30
- 减 - 得到负数或是一个数减去另一个数 a-b 输出结果-10
* 乘 - 两个数相乘或是返回一个被重复若干次的字符串 a*b 输出结果200
/ 除 - x以y b/a输出结果2
% 取模 - 返回除法的余数 b%a输出结果0
** 幂 - 返回x的y次幂 a**b为10的20次方,输出结果100000000
// 取整除 - 返回商的整数部分 9//2输出结果4,9.0//2.0 输出结果4.0

13.2 比较运算

运算符 描述 实例
== 等于 - 比较对象是否相等 (a==b)返回False
!= 不等于 - 比较两个对象是否不相等 (a!=b)返回True
<> 不等于 - 比较两个对象是否不相等 (a<>b)返回True,这个运算符类似!=
> 大于 - 返回x是否大于y (a>b)返回False
< 小于 - 返回 b%a输出结果0
>= 幂 - 返回x的y次幂 a**b为10的20次方,输出结果100000000
<= 取整除 - 返回商的整数部分 9//2输出结果4,9.0//2.0 输出结果4.0

13.3 赋值运算

运算符 描述 实例
= 简单的赋值运算符 c=a+b 将 a+b的运算结果赋值为c
+= 加法赋值运算符 c+=a 等效于c=c+a
-= 减法赋值运算符 c-=a 等效于c=c-a
*= 乘法赋值运算符 c=a 等效于c=ca
/= 除法赋值运算符 c/=a 等效于c=c/a
%= 取模赋值运算符 c%=a 等效于c=c%a
**= 幂赋值运算符 c**=a 等效于c=c**a
//= 取整除赋值运算符 c//=a 等效于c=c//a

13.4 逻辑运算

运算符 描述 实例
and 布尔“与”-如果x为False,x and y 返回False,否则它返回y的计算值。 (a abd b) 返回True
or 布尔“或”-如果x是True,它返回True,否则它返回y的计算值。 (a or b)返回True
not 布尔“非”-如果x为True,返回False,如果x为False,它返回True。 not(a and b)返回False

13.5

运算符 描述 实例
in 如果在指定的序列中找到值返回True,否则返回False。 x在y序列,如果x在y序列中返回True。
not in 如果在指定的序列中没有找到值返回True,否则返回False。 x不在y序列中,如果x不在y序列中返回False。

14. python数据类型

14.1 数字

int(整型)

  • 在32位机器上,整数的位数为32位,取值范围为-231~231-1,即-2147483648~2147483647

  • 在64位系统上,整数的位数为64位,取值范围为-263~263-1,即-9223372036854775808~9223372036854775807

14.2 布尔值

真或假
1 或 0

14.3 字符串

字符串常用功能:

  • 移除空白

  • 分割

  • 长度

  • 索引

  • 切片

14.4 列表

name_list = ['alex', 'seven', 'eric']
或
name_list = list(['alex', 'seven', 'eric'])

基本操作:

  • 索引

  • 切片

  • 追加

  • 删除

  • 长度

  • 切片

  • 循环

  • 包含

14.5 元祖

创建元祖:

ages = (11, 22, 33, 44, 55)
或
ages = tuple((11, 22, 33, 44, 55))

基本操作:

  • 索引

  • 切片

  • 循环

  • 长度

  • 包含

14.6 字典(无序)

创建字典:

person = {"name": "mr.wu", 'age': 18}
或
person = dict({"name": "mr.wu", 'age': 18})

常用操作:

  • 索引

  • 新增

  • 删除

  • 键、值、键值对

  • 循环

  • 长度

14.7 其他

14.7.1 for循环

用户按照顺序循环可迭代对象中的内容,
PS:break、continue

li = [11,22,33,44]
for item in li:
    print item

14.7.2 enumrate

为可迭代的对象添加序号

li = [11,22,33]
for k,v in enumerate(li, 1):
    print(k,v)

14.7.3 range和xrange

指定范围,生成指定的数字

print range(1, 10)
# 结果:[1, 2, 3, 4, 5, 6, 7, 8, 9]
 
print range(1, 10, 2)
# 结果:[1, 3, 5, 7, 9]
 
print range(30, 0, -2)
# 结果:[30, 28, 26, 24, 22, 20, 18, 16, 14, 12, 10, 8, 6, 4, 2]  

15. 练习题

  • 元素分类

有如下值集合

v1 = [11,22,33,44,55,66,77,88,99,90],

将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中。
即:

{'k1': 大于66的所有值, 'k2': 小于66的所有值}
            
v2 = {'k1': [],'k2':[] }

答案:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Author:Chuncheng.Fan <xmzncc@gmail.com>

v1 = [11,22,33,44,55,66,77,88,99,90]
v2 = {'k1':[],'k2':[]}

for item in v1:
    if item > 66:
        v2['k1'].append(item)
    elif item < 66:
        v2['k2'].append(item)
print(v2)
  • 功能要求:

  1. = 2000

要求用户输入总资产,例如:2000
显示商品列表,让用户根据序号选择商品,加入购物车
购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。

            Goods = [
                {"name": "电脑", "price": 1999},
                {"name": "鼠标", "price": 10},
                {"name": "游艇", "price": 20},
                {"name": "美女", "price": 998},
            ]
            
            num = input('>>>') # 1
            num = int(num)
            goods[num]['price']
  • 用户交互,显示省市县三级联动的选择

        
dic = {
    "河北": {
             "石家庄": ["鹿泉", "藁城", "元氏"],
                    "邯郸": ["永年", "涉县", "磁县"],
            }
    "河南": {
             ...
                }
    "山西": {
            ...
                }
            }
            
            for v in dic.keys():
                print(v)
            inp = input('>>>')
            dic[inp]

16. 作业

  • 基于文件存储的用户登录程序(3次登录失败,定用户)

答案:

 #!/usr/bin/env python
# -*- coding: utf-8 -*-
# Author:Chuncheng.Fan <xmzncc@gmail.com>

f1 = open('db','r')
data = f1.read()
f1.close()

# 1.格式化数据

user_info_list = []
user_str_list = data.split('\n')
for item in user_str_list:
    temp = item.split('|')
    v = {
        'name': temp[0],
        'pwd': temp[1],
        'times': int(temp[2])
    }
    user_info_list.append(v)
print(user_info_list)

# 2.判断用户输入
count = 0
while count < 3:
    username = input('请输入用户名:')
    status = 0
    for user_login_info in user_info_list:
        if username == user_login_info['name']:
            if user_login_info['times'] >= 3:
                print('输入错误3次,用户已锁定,请联系管理员 ~')
                exit()
            else:
                count = 0
                status = 1
                pwd = input('请输入密码:')
                if pwd == user_login_info['pwd']:
                    print('用户 %s 登录成功!' %username)
                    user_login_info['times'] = 0
                    count = 3
                    break
                else:
                    if 0 == 2 - user_login_info['times']:
                        pass
                    else:
                        print('用户名或密码错误,请重新输入。')
                    user_login_info['times'] += 1

                if user_login_info['times'] >= 3:
                    print('输入错误3次,用户已锁定,请联系管理员 ~')
                    count = 3
                    break
    if status == 0:
        print('没有这个用户')
    count += 1

# 3.格式化并写入文件
new_db = ""
for user_login_info in user_info_list:
    user_info_str = user_login_info['name'] + "|" + user_login_info['pwd'] + '|' + str(user_login_info['times'])
    new_db = new_db + user_info_str + '\n'

f2 = open('db','w')
f2.write(new_db.strip())
f2.close()

--结束END--

本文标题: 【Python3】初识Python、基

本文链接: https://lsjlt.com/news/193378.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 【Python3】初识Python、基
    1. python介绍 发展史等等.... 减少开发成本 2. python与其他语言对比 C语言:代码-->机器码 其他高级语言:代码-->字节码-->机器码 3. python种类 cpython:常用的py...
    99+
    2023-01-31
    Python
  • Python基础-初识Python
    本文防盗链:http://python789.blog.51cto.comPython基础-初识Python    作者是一名运维工程师,以下为作者学习Python的笔记,希望能给大家带来一些帮助,写的有不对的地方,还望大家指出来,或者加入...
    99+
    2023-01-31
    基础 Python
  • python3--函数初识
    比如python没有len()方法,如何求字符串长度,使用for循环s = 'dadhhrqlasd' count = 0 for i in s: &nb...
    99+
    2023-01-30
    函数
  • Python开发(基础):初识Pytho
    Python可以应用于众多领域,如:数据分析、组件集成、网络服务、图像处理、数值计算和科学计算等众多领域。目前业内几乎所有大中型互联网企业都在使用Python,如:Youtube、Dropbox、BT、Quora(中国知乎)、豆瓣...
    99+
    2023-01-31
    基础 Python Pytho
  • python3基础知识
    字符串截取:利用下标进行截取py_str = 'python'len(py_str)py_str[:3] py_str + '123''python123'py_str * 3'pythonpythonpython' Str将数...
    99+
    2023-01-31
    基础知识
  • Python初识
    1.python介绍 python是一门先编译后解释的语言 动态脚本语言 PyCodeObject和pyc文件 pyCodeObject是python编译器真正的编译成的结果。当python程序运行时,编译的结果是保存在位于内存中的PyCo...
    99+
    2023-01-31
    Python
  • 初识Python
      Python是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum于1989年发明,第一个公开发行版发行于1991年。  Python是纯粹的自由软件,源代码和解释器CPython遵循GPL(GNU Gene...
    99+
    2023-01-31
    Python
  • 初识 Python
    1.源码安装 ipython 1.2.1[root@Client-1]# tar -xf ipython 1.2.1.tar.gz[root@Client-1]cd ipython 1.2.1[root@Client-1 ipython-1...
    99+
    2023-01-31
    Python
  • python-初识python
     一.计算机的初步认识     硬件:内存,主板,CPU,硬盘,显卡,显示器等   内存:     优点:存取速度快     缺点:断电后数据会全部丢失   硬盘:     优点:断电后数据也会永久保存     缺点:存取速度远远慢于内...
    99+
    2023-01-31
    python
  • Python基础篇之初识Python必看攻略
    Python简介 python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一...
    99+
    2022-06-04
    必看 攻略 基础
  • 初识JavaScript的基础
    目录一、JavaScript的书写位置二、JavaScript常用的输入输出语句1.浏览器弹出警告框:2.浏览器控制台打印输出信息:3.浏览器弹出输入框,让用户可以输入:三、变量1....
    99+
    2024-04-02
  • #1 初识Python
    前言 要说现在最时髦的编程语言是什么,那么一定是Python无疑了。让我们来一起来领略其风采吧! 一、Python介绍 Python的创始人为吉多·范罗苏姆(Guido van Rossum),被大家称为“龟叔”,他在1989年圣诞节期间...
    99+
    2023-01-30
    Python
  • DAY1-初识python
    一、python输出hello world !      所有程序都是从hello world!开始    print ("hello world!")    结果:      python(解释型)执行代码流程图:           ...
    99+
    2023-01-30
    python
  • 初识python 3
    if 流程控制的使用[root@Client-1 day2]# cat if.py#!/usr/bin/pythonscore = int(raw_input("Please a num: "))if score >= 90:    ...
    99+
    2023-01-31
    python
  • 初识Python(一)
    一、第一个Python语句创建 hello.py 文件,内容如下:print 'hello,world'执行 hello.py 文件,即:python hello.py执行结果如下:python内部执行过程如下:二、解释器默认执行上述的he...
    99+
    2023-01-31
    Python
  • 初识Python(四)
    一、数字数据类型Python的数字数据类型用于存储数值,它是不可变的数据类型,这意味着改变数字数据类型,则需要一个新分配的对象;Python支持四种不同的数值类型:整型(Int):通常被称为是整型或整数,是正或负整数,不带小数点;长整型(l...
    99+
    2023-01-31
    Python
  • Java基础之初识Maven
    目录一、为什么使用Maven?二、使用Maven的好处三、Maven是什么?四、安装Maven五、第一个Maven六、Maven本地仓库的配置七、IDEA配置Maven八、第二个Ma...
    99+
    2024-04-02
  • Python之路--Python初识
    python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。   编程语言主要分...
    99+
    2023-01-30
    之路 Python
  • python基础知识之函数初阶——命名
    python中的命名空间分三种: 内置的命名空间,在启动解释器的时候自动加载进内存的各种名字所在的空间,比如print,input等不需要定义就可以使用的名字 全局命名空间,就是从上到下所有我们定义的变量名和函数名所在的空间,是在程序从上...
    99+
    2023-01-31
    基础知识 函数 python
  • Python函数初识
    一、函数是什么 ​ 计算机语言中的函数是类比于数学中的函数演变来的,但是又有所不同。前面的知识中我们学会了运用基础语法(列表、字典)和流程控制语句貌似也能处理一些复杂的问题,但是相对于相似的大量重复性的操作我们就没办法用之前的逻辑方法来解...
    99+
    2023-01-30
    函数 Python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作