python 入门第一课 含 PyCharm配置 python3.7

时间:2024-03-08 12:49:09

1、python介绍(详细内容请参照博文末尾的补充说明):

  动态、强类型、解释性编程语言。
  •   动态:python变量不需要预先设置变量类型,而是根据赋值的类型来确定变量的类型,如 a = 3,a就是整数型变量,如 b = \'hello word\',b就是字符串类型变量;
    
  •   强类型,是指变量一旦被赋予某种类型的值后,变量确定为相应类型的变量,除非对其进行类型的强制转换,否则变量的类型不会发生变化,如 a = ‘3’ ,a就是字符串形变量,如需使用进行数值运算,则需a = int(a)进行操作,之后a的类型被转换为整数型;
    
  •   解释性语言:逐条解释,可以直接修改,但必需要在解释器环境下运行;与解释性语言相对应的另一类是编译型语言,运行之前必须要经过编译,也可以打包为.exe的可执行文件,如C++。
    

2、python安装与PyCharm配置:

  • 2.1 python 安装(windows系统)
  •     参照  [python安装](https://www.cnblogs.com/weven/p/7252917.html/)
    
  • 2.2 PyCharm配置
  •    可以参照  [ PyCharm初始配置教程](https://www.jianshu.com/p/2a4d388b86e9)
    
  • 2.3 补充说明:
  • 添加工具栏,进行设置操作比较方便,如下:

code设置,确保代码一致,比如在python2.7输出中文,代码不一致也会出错,pycharm设置如下:

同一台电脑可以同时安装python3.和python2.两个系列的python解释器,python3.默认编码为utf-8,python2.默认编码为GBK,在python2.7中如要输出中文,需要在代码文件的首行申明使用utf-8编码格式#-- coding:utf-8 --("-"也可以是“_”)

# -*- coding:utf-8 -*-
__author__ = \'chongmao\'

print(\'你好,世界\')  #python 2.7 output zh

pycharm 中可以选择python2.7的解释器,如下:

运行:

查看控制台及输出结果:

默认的字体太小,看起来容易眼睛疲劳,建议根据个人喜好进行调节:

.py文件的重命名操作如下:

将工程文件添加为系统路径:

3、下面开始具体的练习内容:

3.0 if else 条件控制语句:

  • 控制语句或函数定义后面必须以":"结尾;
  • python 以缩进的方式界定语句的范围,一个缩进为四个空格,通常使用一次Tab键实现;
if condition_1:
    statement_block_1
elif condition_2:
    statement_block_2
else:
    statement_block_3

可以是:

if condition_1:
    statement_block_1
elif condition_2:
    statement_block_2
ellif condition_3:
    statement_block_3

也可以是:

if condition_1:
    statement_block_1
else:
    statement_block_3

3.1 while 循环
-实现猜数字,初始一个数值,输入值与初始值比较,并提示“大了”或“小了”,如果猜对了就结束游戏,不对的话,分阶段进行选择,每阶段为四次:

__author__ = \'Administrator\'
age_of_oldboy = 23
count = 0
ct_l =4

def print_():
    print("it\'s not right yet","\nYou\'v already guessed %s times---"%(count+1),"\ngame over?")  #\'\n\'change lines

while count < ct_l:
    guess_age = int(input("guss age:"))    #python 3.x input,the type is string,str_to_int

    if guess_age == age_of_oldboy  :
        print("yes,you got it.")
        break        #  once "==",over the game
    elif guess_age > age_of_oldboy :
        if count<ct_l-1:
            print("think smaller")
        else:
            print_()    #run the def print_() defined above
    else:
        if count<ct_l-1:
            print("think bigger")
        else:
            print_()

    count +=1
    if count ==ct_l:
        continue_confirm = input("do you want to keep guessing?...Y/N:")  #if the player failed four times, provide the choice
        if continue_confirm == "n" or continue_confirm == "N":
            break
        else:
            count =0

三种输出结果如下:

3.2 三种方式实现格式化输出:

__author__ = \'Administrator\'
name = input("name:")
age = int(input("age:")) #integer
print(type(age))
job = input("job:")
salary = input("salary:")

info = """---------info of %s------
name:%s
age:%d
job:%s
salary:%s
"""%(name,name,age,job,salary)

info2 = """---------info of {_name}------
name:{_name}
age:{_age}
job:{_job}
salary:{_salary}
""".format(_name=name,_age=age,_job=job,_salary=salary)


info3 = """---------info of {0}------
name:{0}
age:{1}
job:{2}
salary:{3}
""".format(name,age,job,salary)
print(info,
      info2,
      info3)

输出结果如下:

3.3 初级版的user-password验证:

__author__ = \'Administrator\'
import getpass
_username = "admin"
_password = "888"
count = 0
cnt = 3
while count < cnt:
    username = input("username:")
    password = input("password:")
    if username == _username and password == _password:
        print("Welcome user---{name}---login...".format(name=username))
        break
    else :
        if count < cnt-1:
            print("Invalid username or password")
        else:
            print(\'Please contact the administrator\')
    count +=1

某种输出结果如下:

3.4 while和for循环中,break与continue的区别,详情python 循环语句

  • break:结束当前循环
  • continue:跳出当前循环,进行下一次循环。
  • continue语句被用来告诉Python跳过当前循环块中的剩余语句,然后继续进行下一轮循环。
__author__ = \'Administrator\'
for i in range(0,10):
    print(\'loop\',i)
    for j in range (10):
        if j < 5 :
            print(j)
        else:
            continue

4、补充说明: python介绍

Python可以应用于众多领域,如:数据分析、组件集成、网络服务、图像处理、数值计算和科学计算等众多领域。目前业内几乎所有大中型互联网企业都在使用Python,如:Youtube、Dropbox、BT、Quora(中国知乎)、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、腾讯、汽车之家、美团等。

目前Python主要应用领域:

云计算: 云计算最火的语言, 典型应用OpenStack
WEB开发: 众多优秀的WEB框架,众多大型网站均为Python开发,Youtube, Dropbox, 豆瓣。。。, 典型WEB框架有Django
科学运算、人工智能: 典型库NumPy, SciPy, Matplotlib, Enthought librarys,pandas
系统运维: 运维人员必备语言
金融:量化交易,金融分析,在金融工程领域,Python不但在用,且用的最多,而且重要性逐年提高。原因:作为动态语言的Python,语言结构清晰简单,库丰富,成熟稳定,科学计算和统计分析都很牛逼,生产效率远远高于c,c++,java,尤其擅长策略回测
图形GUI: PyQT, WxPython,TkInter
Python在一些公司的应用:

谷歌:Google App Engine 、code.google.com 、Google earth 、谷歌爬虫、Google广告等项目都在大量使用Python开发
CIA: 美国中情局网站就是用Python开发的
NASA: 美国航天局(NASA)大量使用Python进行数据分析和运算
YouTube:世界上最大的视频网站YouTube就是用Python开发的
Dropbox:美国最大的在线云存储网站,全部用Python实现,每天网站处理10亿个文件的上传和下载
Instagram:美国最大的图片分享社交网站,每天超过3千万张照片被分享,全部用python开发
Facebook:大量的基础库均通过Python实现的
Redhat: 世界上最流行的Linux发行版本中的yum包管理工具就是用python开发的
豆瓣: 公司几乎所有的业务均是通过Python开发的
知乎: 国内最大的问答社区,通过Python开发(国外Quora)
春雨医生:国内知名的在线医疗网站是用Python开发的
除上面之外,还有搜狐、金山、腾讯、盛大、网易、百度、阿里、淘宝 、土豆、新浪、果壳等公司都在使用Python完成各种各样的任务。
Python 是一门什么样的语言?
编程语言主要从以下几个角度为进行分类,编译型和解释型、静态语言和动态语言、强类型定义语言和弱类型定义语言,每个分类代表什么意思呢,我们一起来看一下。

编译和解释的区别是什么?
编译器是把源程序的每一条语句都编译成机器语言,并保存成二进制文件,这样运行时计算机可以直接以机器语言来运行此程序,速度很快;

而解释器则是只在执行程序时,才一条一条的解释成机器语言给计算机来执行,所以运行速度是不如编译后的程序运行的快的.

这是因为计算机不能直接认识并执行我们写的语句,它只能认识机器语言(是二进制的形式)

编译型vs解释型
编译型
优点:编译器一般会有预编译的过程对代码进行优化。因为编译只做一次,运行时不需要编译,所以编译型语言的程序执行效率高。可以脱离语言环境独立运行。
缺点:编译之后如果需要修改就需要整个模块重新编译。编译的时候根据对应的运行环境生成机器码,不同的操作系统之间移植就会有问题,需要根据运行的操作系统环境编译不同的可执行文件。

解释型
优点:有良好的平台兼容性,在任何环境中都可以运行,前提是安装了解释器(虚拟机)。灵活,修改代码的时候直接修改就可以,可以快速部署,不用停机维护。

缺点:每次运行的时候都要解释一遍,性能上不如编译型语言。