一、Python简介

一、Python简介Python简介python的创始人为吉多·范罗苏姆(GuidovanRossum)。1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释

大家好,又见面了,我是你们的朋友全栈君。

Python简介

python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。

最新的TIOBE排行榜,Python赶超C#占据第四, Python崇尚优美、清晰、简单,是一个优秀并广泛使用的语言。

<span role="heading" aria-level="2">一、Python简介

 

Python是一门什么样的语言?

python是一门动态解释性的强类型定义语言

 

Python语言缺点

第一个缺点就是运行速度慢。(相对而言。)
第二个缺点就是代码不能加密。(编译型语言只需要把编译后的机器码发布出去。要从机器码反推出源代码是不可能的。)

 

Python版本

本人才疏学浅不敢妄自菲薄,引用python的声明。

Python 科学栈中的所有主要项目现在都支持 Python 3.x 和 Python 2.7,很多项目已经支持这两种版本很多年。尽管我们不断开发用于高效维护兼容性的工具和技术,但是在大量代码开发中这仍然是虽然微小但经常出现的冲突。

我们希望充分使用 Python 3,目前接受交叉兼容代码以实现顺利过渡,但是我们不打算无限期维护该兼容性。尽管从 Python 2 到 Python 3 的过渡不像我们希望的那么快,但是它的确发生了,越来越多的人使用、教授和推荐 Python 3。

由于很多人仍然使用 Python 2,Python 语言的开发者将 Python 2.7 的支持期扩展为 2015 到 2020。我们认为这 5 年足够用户从 Python 2 中迁移出来,我们的项目计划最迟在 2020 年底停止支持 Python 2。之后,我们能够简化代码,充分利用 Python 语言和标准库当前版本的很多新功能。 
此外,2020 年之前,我们的一些项目将减少对 Python 2.7 的支持,只修复 bug,新功能版本则使用 Python 3。这和 Python 语言本身的支持相匹配,Python 2.7 版本仅包括修复 bug 和安全提升。

第三方可能对我们的旧 Python 版本项目提供付费支持,时间长于我们对旧 Python 版本的支持。我们不会阻止这类行为,这是免费、开源软件的核心原则,因此这种行为是可行的。但是,如果你想要免费的第一方支持,请开始迁移到 Python 3 吧。

 

Python解释器

当我们编写python代码时,我们得到的是一个包含python代码以.py结尾的文本文件。要运行代码,就需要python解释器去执行.py文件。

Python的解释器很多,但使用最广泛的还是CPython。如果要和Java或.Net平台交互,最好的办法不是用Jython或IronPython,而是通过网络调用来交互,确保各程序之间的独立性。

 

Python安装

下载地址

https://www.python.org/downloads/

环境变量

win10环境变量: 计算机–>属性–>高级系统设置–>高级–>环境变量–>系统变量–>Path

Ps:

  注意添加 python\Scripts 路径,否则pip命令无法使用。

  多版本添加默认的版本路径,备用版本先改解释器名称再添加。如python.exe –> python2.exe,pip.exe–>pip2.exe

 

第一个程序

<span role="heading" aria-level="2">一、Python简介
<span role="heading" aria-level="2">一、Python简介

1 C:\Users\root>python
2 Python 3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:04:45) [MSC v.1900 32 bit (Intel)] on win32
3 Type "help", "copyright", "credits" or "license" for more information.
4 >>> print('hello world')
5 hello world

hello world

 

编码

python2.x 默认使用ascii码。文件开头需添加如下代码。python3.x解释器默认编码utf-8

<span role="heading" aria-level="2">一、Python简介
<span role="heading" aria-level="2">一、Python简介

1 #-*- coding:utf-8 -*-

coding:utf-8

 

ASCII

ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其最多只能用 8 位来表示(一个字节),即:2**8 = 256-1,所以,ASCII码最多只能表示 255 个符号。

<span role="heading" aria-level="2">一、Python简介

 

 

Unicode

显然ASCII码无法将世界上的各种文字和符号全部表示,所以,就需要新出一种可以代表所有字符和符号的编码,即:Unicode

Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,规定虽有的字符和符号最少由 16 位来表示(2个字节),即:2 **16 = 65536,
注:此处说的的是最少2个字节,可能更多

 

UTF-8

UTF-8,是对Unicode编码的压缩和优化,他不再使用最少使用2个字节,而是将所有的字符和符号进行分类:ascii码中的内容用1个字节保存、欧洲的字符用2个字节保存,东亚的字符用3个字节保存。

 

gbk

对亚洲国家的文字做的对应关系

 

Ps:

  utf-8 使用3个字节来表示一个中文。gbk用俩个字节表示。

  一个字节是8位计算机码。如:00000000

 

变量

变量来源于数学,是计算机语言中能储存计算结果或能表示值抽象概念。变量可以通过变量名访问。

 

格式:变量名 = 值  

1 name = 'haibin'
2 age = 13

 

命名规则:

  1.   数字、字母、下划线(_)组成.
  2.   不能数字开头。
  3.   不能使用Python关键字。

  python关键字

1 ['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']

 

Ps:

  别用汉字当变量。别用拼音当变量(有道词典了解一下)。见名知意。

  用小写。(大写为全局变量)

  变量、函数用下划线。类用驼峰。

<span role="heading" aria-level="2">一、Python简介

 

if语句

格式

1 if 条件:
2     pass
3 elif 条件:
4     pass 
5 else:
6     pass

Ps:

  elif 和 else非必须,可只有if。

 

实例

1 age = 20
2 
3 if age > 18:
4     print("age > 18")
5 elif age > 13:
6     print("age > 13")
7 else:
8     print("age is" + str(age))

结果为:

age > 18

Ps:

  if 语句自上而下匹配条件,最多匹配一次。可以匹配不上。

 

while

格式

while 条件:
    pass 

Ps:

  while True 传说中的死循环,慎用。一、条件不给True。二、满足某种条件内部破坏循环。

实例

while True:
    print("God is girl.")

 

for

格式


for i in 可迭代对象:
print("God is girl.")

Ps:

  必须为可迭代对象,否则报错。关于可迭代对象,后面详解。

 

示例

for i in [1, 5, 7, 9]:
    print(i)

 

continue和break

    continue  # 跳出当前这一次循环
    break     # 跳出当前这个循环

示例

for i in [1, 5, 7, 9]:
    if i == 7:
        continue
    if i == 9:
        break
    print(i)

Ps:

  需要注意的是,这里个参数只对循环语句即(while和for生效。)很多时候会遇到好几个语句、循环嵌套的情况。当运行结果与预期不符的时候用print打印排查。

 

练习题

求1-100的所有数的和(假装没有sum函数)

count = 1
sum = 0
while count < 101:
    sum += count
    count += 1
print(sum)
sum = 0
for i in range(1, 101):
    sum += i
print(sum)

输出 1-100 内的所有奇数

count = 1
while count < 101:
    if count % 2 == 1:
        print(count)
    count += 1
for i in range(1, 101):
    if i % 2 == 1:
        print(i)

输出 1-100 内的所有偶数

for i in range(1, 101):
    if i % 2 == 0:
        print(i)
count = 1
while count < 101:
    if count % 2 == 0:
        print(count)
    count += 1

求1-2+3-4+5 … 99的所有数的和

sum = 0
for i in range(1, 100):
    if i % 2 == 0:
        sum -= i
    else:
        sum += i
print(sum)
count = 1
sum = 0
while count < 100:
    if count % 2 == 0:
        sum -= count
    else:
        sum += count
    count += 1
print(sum)

用户登录(三次错误机会)

<span role="heading" aria-level="2">一、Python简介
<span role="heading" aria-level="2">一、Python简介

 1 count = 1
 2 while True:
 3     user_name = input("UserName:")
 4     passwd = input("Password:")
 5     flag = False
 6     for item in user_list:
 7         if item['username'] == user_name and item['password'] == passwd:
 8             print("Log in successfully.")
 9             flag = True
10             break
11     if flag:
12         break
13     else:
14         print("The input is invalid.")
15     if count < 3:
16         pass
17     else:
18         print("You've tried it too many times.")
19         break
20     count += 1

View Code

<span role="heading" aria-level="2">一、Python简介
<span role="heading" aria-level="2">一、Python简介

 1 user_list = [
 2             {'username':'root', 'password':'123' },
 3             {'username':'ubuntu', 'password':'123'},
 4             {'username':'admin', 'password':'123'}
 5             ]
 6 count = 1
 7 while True:
 8     user_name = input("UserName:")
 9     passwd = input("Password:")
10     flag = False
11     for item in user_list:
12         if item['username'] == user_name and item["password"] == passwd:
13             flag = True
14             break
15     if flag:
16         print("Log in successfully.")
17         break
18     else:
19         print("The input is invalid.")
20         count += 1
21     if count == 4:
22         print("You've tried it too many times.")
23         break

View Code

<span role="heading" aria-level="2">一、Python简介
<span role="heading" aria-level="2">一、Python简介

 1 user_list = [
 2             {'username':'root', 'password':'123' },
 3             {'username':'ubuntu', 'password':'123'},
 4             {'username':'admin', 'password':'123'}
 5             ]
 6 count = 1
 7 while True:
 8     user_name = input("UserName:")
 9     passwd = input("Password:")
10     flag = False
11     user_info = {'username':user_name, 'password':passwd}
12     if user_info in user_list:
13         print("Log in successfully.")
14         break
15     else:
16         print("The input is invalid.")
17         count += 1
18     if count == 4:
19         print("You've tried it too many times.")
20         break

View Code

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/155844.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • pycharm如何配置_没有有效的ip配置怎么办

    pycharm如何配置_没有有效的ip配置怎么办PyCharm配置示例1、全局设置:这里是全局设置,也可在每个项目里面单独设置点击右下角的Configure选择Preferences1、设置背景颜色与显示内存大小:2、设置不默认打开上次的工程3、设置显示方法右边分割线:4、设置自动引包:5、设置显示方法缩进线6、设置字体与字体大小:7、设置文件编码格式:请注意,这一步很重要,不要坑队友!8、测试本机是…

    2022年8月26日
    4
  • stm32cubemx使用教程pdf_库乐队完全新手教程

    stm32cubemx使用教程pdf_库乐队完全新手教程前言:本系列教程将对应外设原理,HAL库与STM32CubeMX结合在一起讲解,使您可以更快速的学会各个模块的使用所用工具:1、芯片:STM32F407ZET6/STM32F103ZET62、STM32CubeMx软件3、IDE:MDK-Keil软件4、STM32F1xx/STM32F4xxHAL库知识概括:通过本篇博客您将学到:PWM工作原理…

    2022年8月30日
    2
  • 40-50岁的男人喜欢什么样的女人呢?

    40-50岁的男人喜欢什么样的女人呢?悟空问答里有个热门问题:40-50岁的男人喜欢什么样的女人呢?答案多姿多彩,有理有据互补的女人有安全感的女人经济独立的女人性爱和谐的女人心态成熟的女人知书达理的女人会过生活的女人能好好聊天的女人温柔体贴的女人…………认为:无论男人是20岁、30岁、40岁、50岁、60岁、70岁、80岁、90岁、100岁还是200岁,他们都喜欢年轻漂亮的小姑娘,同意的转起。

    2022年7月25日
    7
  • 【数据库】报错ora 12154 解决方法[通俗易懂]

    【数据库】报错ora 12154 解决方法[通俗易懂]Oracle报错ora12154解决办法:1.确认服务器监听正确打开;2.确认别名前无空格。

    2022年7月24日
    13
  • 十:Java之泛型

    十:Java之泛型

    2022年1月26日
    46
  • C++二维数组sort排序问题

    C++二维数组sort排序问题以往遇到行排列问题(按每行的字典序排序)的时候,总是使用结构体来进行排序,但是如何使用二维数组来达到同样的效果呢?实验内容:利用二维数组进行“三级排序”测试1:使用c++内置的普通型二维数组#include&lt;algorithm&gt;#include&lt;iostream&gt;usingnamespacestd;boolcmp(inta[],intb[]){ …

    2022年10月20日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号