专注于 JetBrains IDEA 全家桶,永久激活,教程
持续更新 PyCharm,IDEA,WebStorm,PhpStorm,DataGrip,RubyMine,CLion,AppCode 永久激活教程

python成长之路-----day1----笔记(1)

1****、python语言介绍

python****的创始人:Guido Van Rossum

2****、python是一门什么样的语言

编程语言主要从以下几个角度进行分类:编译型,静态型,动态性,强类型定义语言和弱类型定义语言

1) 编译型:有一个负责翻译的程序来对我们的源代码进行转换,生成对应的可执行代码,这个过程就是编译(Compile),而负责编译的程序就被称为编译器(Compiler)

2) 通常我们所说的动态语言,静态语言是指动态类型语言和静态类型语言

(1)动态类型语言:是指在运行期间采取做数据类型检查的语言。即在用动态类型的语言编程时,永远也不用给任何变量指定数据类型,该语言会在你第一次赋值给变量时,在内部将数据类型记录下来。典型的是python和Ruby

(2)静态类型语言:数据类型是在编译期间检查的,也就是说在写程序的时候要声明所有变量的数据类型。C/C++是静态类型语言的典型代表,其他的静态类型语言还有C#,JAVA

3****、****Python****能做什么?

网络应用、科学运算、****GUI****程序、系统管理工具、其他等等

python****的优缺点:

优点:简单、开发效率高、高级语言、可移植性、可扩展性、可嵌入性

缺点:速度慢,但是相对的、代码不能加密、线程不能利用多****CPU****问题

4****、****python****解释器:****C****python****、IPython、PyPy、Jython、IronPython

—————-****以上是一些基础的python知识—————

1****、如果用的****ubantu****系统的****linux****,默认存在的是两个****python****版本:****2.7****和****3.5****,默认执行****python****,****启动的是2.7版本

如果想要启动****3.5****版本,需要做如下操作

ln -s /usr/bin/python3.****5 /usr/bin/python****(需要在****root****下用户执行或者****sudo****)

查看自己的****python****的版本:

Python -V

70_1.png

2****、开始****python****的第一个程序:

代码内容如下:

70_2.png

代码中开头的:****#****!****/usr/bin/env python****与编写****shell****程序时****#****!****/bin/bash****意思是一样的声明要使用的解释器类型!

运行结果如下:

70_3.png

3****、第二个小程序关于猜年龄:

代码内容如下:

在linux中写的一个版本:

70_4.png

运行结果如下:

70_5.png

对上面猜你年龄程序的一些分析如下:

70_6.png

对于****input****在****2.7****里面的是****raw****_input****()

在****3.5****里面同样的****print****需要****print****()

对于****if****和****else****后面的冒号为规定格式

代码里的****int****就是为了将输入的字符串转换为****int****类型,默认输入的内容都是字符串****string****类型

版本1:(用了if…elif…else)

 age_of_dean = 23
 guess_age =  int(input("input you guess:"))
 if guess_age == age_of_dean:
    print("you got it")
 elif guess_age > age_of_dean:
    print("think smaller.....")
 else:
    print("think bigger.......")

版本2:(用了while循环)

 age_of_dean = 23

 count = 0

 while count<3:

    guess_age = int(input("input you guess:"))

    if guess_age == age_of_dean:

       print("you got it")

       break
    elif guess_age > age_of_dean:

       print("think smaller.....")

    else:

       print("think bigger.......")

    count +=1

 else:

    print("you guess is too manys,fuck off")

版本3:(任意玩版本)

age_of_dean = 23

count = 0

while count<3:

   guess_age = int(input("input you guess:"))

   if guess_age == age_of_dean:

      print("you got it")

      break
   elif guess_age > age_of_dean:

      print("think smaller.....")

   else:

      print("think bigger.......")

   count +=1

   if count == 3:

      input_continue = input("Do you want to continue to guess:")

      if input_continue != "n":

         count = 0
版本4:(for循环)
age_of_dean = 23

for i in range(3):

   guess_age = int(input("input you guess:"))

   if guess_age == age_of_dean:

      print("you got it")

      break
   elif guess_age > age_of_dean:

      print("think smaller.....")

   else:

      print("think bigger.......")

else:

   print("you guess is too manys,fuck off")

4****、关于格式化输出的三种方法:

方法1:

Name = input("Name:")

Age = input("Age:")

Job = input("Job:")

Salary = input("Salary:")

info1 = '''--------info of %s-------
Name:%s
Age:%s
Job:%s
Salary:%s
''' %(Name,Name,Age,Job,Salary)

print(info1)

方法2:

Name = input("Name:")

Age = input("Age:")

Job = input("Job:")

Salary = input("Salary:")

info2 = '''--------info of {0}-------
Name:{0}
Age:{1}
Job:{2}
Salary:{3}
''' .format(Name,Name,Age,Job,Salary)

方法3:

info3 = '''--------info of {_name}-------
Name:{_name}
Age:{_age}
Job:{_job}
Salary:{_salary}
''' .format(_name=Name,_age=Age,_job=Job,_salary=Salary)

print(info2)

5****、变量的明名规则:

python****变量的命名只能由数字、字母和下划线****3****种字符组成,且第一个字符串必须为字符或者下划线。

例如:****name****,****Sutdent****,Li_li

不符合的规则如下:****M****.C****,$23,#11,zhao Fan,C++这些都是错误的命名

6****、关于赋值后在内存中的关系

例子代码如下:

name = “Dean”

name2 = name

print(“My name is “,name,name2)

name = “zhaofan”

print(“My name is “,name,name2)

运行结果如下:

70_7.png

从上面可以看出,当你把一个变量****name****赋值给另一个变量****name****2****时,解释器只是把name变量指向的内存地址赋值给了name2,因此name和name2并未发生直接的关联,只不过是他们都同时指向了同一个内存地址而已,这也是为什么你把name再指向一个新的地址后,而name2的值还保持不变的原因

文章永久链接:https://tech.souyunku.com/30891

未经允许不得转载:搜云库技术团队 » python成长之路-----day1----笔记(1)

JetBrains 全家桶,激活、破解、教程

提供 JetBrains 全家桶激活码、注册码、破解补丁下载及详细激活教程,支持 IntelliJ IDEA、PyCharm、WebStorm 等工具的永久激活。无论是破解教程,还是最新激活码,均可免费获得,帮助开发者解决常见激活问题,确保轻松破解并快速使用 JetBrains 软件。获取免费的破解补丁和激活码,快速解决激活难题,全面覆盖 2024/2025 版本!

联系我们联系我们