python之路第一天

学习python主要是对自己的一种自身的要求,让自己更加的优秀,在同龄人中能够拔得头筹。希望自己未来的几年中能够凭借自己的技术,撑起自己对物质的需求。

第一次学习python,心里还是很激动的,怕自己学不会,学不好,不管会不会,我不想掉队。坚持、坚持、坚持。

Python的优缺点

1、python明确、简单、易懂 个人认为是初学者的最好的选择,曾经自己看过端时间的java,可以很明的说,python比java简单多了

2、开发效率非常高,Python有非常强大的第三方库,基本上你想通过计算机实现任何功能,Python官方库里都有相应的模块进行支持,直接下载调用后,在基础库的基础上再进行开发,大大降低开发周期。

3、高级语言,当你用Python语言编写程序的时候,你无需考虑诸如如何管理你的程序使用的内存一类的底层细节

4、可移植性--如果不是非要调用系统的底层权限,是可以完美移植到任何系统的。

5、可扩展性,由于解释性语言的源码可以直接被看到,所以python支持调用c/c++所书写的方法,这样起到了加密的作用

6、可嵌入性--你可以把Python嵌入你的C/C++程序,从而向你的程序用户提供脚本功能。

再看看缺点:

1、代码不能加密,作为解释性语言,它的源码都是以名文形式存放的。如果你需要你的代码加密,可以使用其他预言书写

2、线程不能利用cpu的优势。

3、速度较c语言较慢,但是人类无法去感受这样的慢的速度,需要更加专业的测试工具才能测试出,代码在运行时的速度

我想说的是 没有最优秀的语言,也没有最好的语言,但是却有最牛逼的开发工程师,不需要和别人去争论那种语言好,各有各的优点。

Python安装

windows安装去官网下载最新的就可以了。。

2.x只支持到2020年,所以我们还是抓紧换了吧。

windows的安装很简单。。一直下一步就ok了。。

注意如果想在CMD下直接使用python需要配置环境变量

如何配置环境变量,百度吧,一百度一大堆,要学会自己学习,这是我进入it行业第一位老师交给我最有用的一句话。

linux和mac无需安装python

自带2.7 现在都用3.x了

如果没有3.x 推荐个链接吧

http://jingyan.baidu.com/article/eae07827f7f2d01fec5485f7.html

亲测好使。。。

Python基础

Python的语法比较简单,采用缩进方式,写出来的代码就像下面的样子:


# print absolute value of an integer:
1 a = 100
2 if a >= 0:
3     print(a)
4 else:
5     print(-a)

#开头的语句是注释,注释是给人看的,可以是任意内容,解释器会忽略掉注释。其他每一行都是一个语句,当语句以冒号:结尾时,缩进的语句视为代码块。

Python使用缩进来组织代码块,请务必遵守约定俗成的习惯,坚持使用4个空格的缩进。

在文本编辑器中,需要设置把Tab自动转换为4个空格,确保不混用Tab和空格。

Hello World程序

好的进入正题,hello world我认为是每一名开发都要做的,虽然简单,但是也证明你正式踏上屌丝程序员的路,恭喜你。

之所以选择学习python是因为 java的hello world 要写太多代码了 累啊。。。

我们来看下java的hello world怎么写的,,,在看看python是在怎么写的

首先java

1 class HelloWorld{
2 
3       public static void main(String[]args){
4             
5             System.out.println("Hello World");
6 
7     }
8 }        

8行的hello world

好的我们看下 python的helloworld

print("Hello World“}

再看看python的。。。我想你应该知道学习那个了

有一点需要注意,如果是需要在linux下运行我们写的.py的文件的话,要先制定他解释器

#!/usr/bin/env python
  
print "hello,world"
#!/usr/bin/env python 就代表着我在执行时需要用python执行

如果我们需要执行.py文件的话,需要给他执行的权限
chmod +x xxx.py 或 chmod 777 xxx.py
这涉及到了linux基础的一些知识,推荐本书吧,,,《鸟叔的linux私房菜》看完你会受益匪浅。。。。
如果你已经成功加上了执行权限./xxx.py就可以直接运行了

变量

声明变量

name = 'houyafan'

上面的代码就是声明了一个变量,变量名为:name 变量的值为houyafan

变量定义的规则:

  • 变量名只能是 字母、数字或下划线的任意组合
  • 变量名的第一个字符不能是数字
  • 以下关键字不能声明为变量名
    ['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']
变量的赋值

name = "houyafan"

name1 = name

print(name,name1)

name="doubi"

print("What is the value of name2 now?")

# 可以通过内存的id来验证
# 可以看到name的改变没有对name1进行改变。,当赋值成功后,已在内存开辟了另外一个空间存储name1
# 所以对于name的更改不会影响到name1的值,两个根本不存在同一个内存区域
print(id(name))

print(id(name1))

用户输入

1 name = input("Please enter your username : ")
2 
3 print(name)

将用户输入的值赋值给变量name 并打印name

可以做一个小实验,这里还有一个小知识点

name = input("Please enter your username : ")
# type()可以接收任何东西作为参数――并返回它的数据类型。整型、字符串、列表、字典、元组、函数、类、模块,甚至类型对象都可以作为参数被 type 函数接受。
print(type(name))

age = int(input("Please enter your age : "))

print(type(age))

可以看到我们在print name的类型时 是一个str的类型,而在print age的类型时是一个int的类型,多次尝试后发现,input进来的值都默认变成了str的类型

当我们需要使用int类型的值时需要 用int()这个方法将str强制转换成int类型。

当然也是可以str()转换成str类型的,float()转换成float(浮点型),hex()可以将值转换成16进制,long()把字符串和数子转换成长整数

list()函数可将序列对象转换成列表,oct()函数可把给出的整数转换成八进制数,ord()函数返回一个字符串参数的ASCII码或Unicode值、格式

print(ord("侯")) 

表达式if ... else

通过场景我们来学习如何使用if elif else 判断

 验证谁来了?

name = input("Please enter your username : ")

if name == "houyafan":

    print("Welcome..{info_name}".format(info_name=name))

elif name == "hyf":

    print("Welcome..{info_name}".format(info_name=name))

else:

    print("{info_name} is not here...".format(info_name=name))

当我输入houyafan时提示我houyafan来了,我输入hyf时提示我hyf来了  当都不是这两个人时,提示xxx不在这里

这里面的format(),是一种格式化输出索要用到的方法

if...elif...else 中的判断方式有很多列出几种:

name = input("Please enter your username : ")
# 可以== 或 != 或 > 或 < 
if name == "houyafan":

    print("Welcome..{info_name}".format(info_name=name))
# 也可以是 in 的方法  字符串“hyf” 是否在name中
elif "hyf" in name:

    print("Welcome..{info_name}".format(info_name=name))
# 也可以是多重判断条件同时存在
elif name == "houyafan"  and "hyf" in name :

    print("{info_name} is not here...".format(info_name=name))
# 也可以是一对象
elif new_input_username.count(username)==3 :
    
    print("{info_name} is not here...".format(info_name=name))

else 
    pass

表达式for循环

 Python的循环有两种,一种是for...in循环,依次把list或tuple中的每个元素迭代出来

1 names = ['Michael', 'Bob', 'Tracy']
2 
3 for name in names:
4 
5     print(name)

所以for x in ...循环就是把每个元素代入变量x,然后执行缩进块的语句。

再比如我们想计算1-100的整数之和,可以用一个sum变量做累加:

sum = 0

for x in range(101):

    sum = sum + x

print(sum)

range()是一个人数量生成的方法,可以生成一个整数序列,再通过list()函数可以转换为list。比如range(5)生成的序列是从0开始小于5的整数。

while循环

基本格式

# while 条件:  
      # 循环体
  # 如果条件为真,那么循环体则执行
  # 如果条件为假,那么循环体不执行
     
while True:
    print(1)

上面的测试测序是一个死循环,条件一直为真,不停输出1。

while的条件判断也有多种判断的形式,只要while 的条件为真,这个循环就会一直持续下去。

当然也可以做判断如:

x=0

while x<3:

    x+=1

    print("run!!!")

当x<3时 输出run,当x>=3时 循环就停止了。

break和continue的理解:break是打校长,就不用上课了,continue是打老师,只不过当天不用上课,后面还得上课!

break 退出整个循环

continue退出当前循环

for、while和 if..elif...else结合使用的组合也是有很多的

在运用的过程中可以随意的组合。

第一天就这样,也是第一次正式的学习python开发,第一次写博客,太多的第一次放到一起,今天是个新起点,坚持吧,相信自己!!

                                                      KID

 




原文地址:https://www.cnblogs.com/houyf/p/5700610.html