python基础

Posted xyn123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python基础相关的知识,希望对你有一定的参考价值。

        windows:

1
2
3
4
5
6
7
1、下载安装包
    https://www.python.org/downloads/
2、安装
    默认安装路径:C:\\python27
3、配置环境变量
    【右键计算机】--》【属性】--》【高级系统设置】--》【高级】--》【环境变量】--》【在第二个内容框中找到 变量名为Path 的一行,双击】 --> 【Python安装目录追加到变值值中,用 ; 分割】
    如:原来的值;C:\\python27,切记前面有分号

          windows下安装Python(自动添加环境变量)以3,.5版本的举例:

          1,官网下载:https://www.python.org/downloads/windows/ 

          2,选择版本。

          技术分享图片

           3,自动添加环境变量。

         技术分享图片

         4,更改完成。

          技术分享图片

         5,点击安装

   3. 运行python代码

       在d盘下创建一个t1.py文件内容是:

  print(‘hello world‘)

      打开windows命令行输入cmd,确定后 写入代码python d:t1.py 

技术分享图片

技术分享图片

 即:终端---->cmd-----> python  文件路径。 回车搞定~

  4  解释器

      #!/usr/bin/env python

      运行python程序时要指定解释器。

   5  注释

  当行注释:# 被注释内容

  多行注释:‘‘‘被注释内容‘‘‘,或者"""被注释内容"""

技术分享图片

 6 变量

   变量:把程序运行的中间结果临时的存在内存里,以便后续的代码调用。

   6.1、声明变量

 
 
name = "taibai"

上述代码声明了一个变量,变量名为: name,变量name的值为:"taibai"

变量的作用:代指内存里某个地址中保存的内容。

技术分享图片

 

     6.2、变量定义的规则:

  • 变量名只能是 字母、数字或下划线的任意组合
  • 变量名的第一个字符不能是数字
  • 以下关键字不能声明为变量名
    [‘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‘]
  • 变量的定义要具有可描述性。

         一般推荐变量定义要通俗易懂,规整。例如:age_of_oldboy = 56   、number_of_students = 80

      6.3、变量的赋值

name1 = "wupeiqi"
name2 = "alex"
 
  7,常量

常量即指不变的量,在程序运行过程中不会改变的量。约定俗成用变量名全部大写代表常量。例如,AGE_OF_OLDBOY = 56

  8,程序交互

# 将用户输入的内容赋值给 name 变量
name = input("请输入用户名:") 
# 打印输入的内容
print(name)

   执行脚本就会发现,程序会等待你输入姓名后再往下继续走。

   9 格式化输出

   现有一需求,问用户的姓名、年龄、工作、爱好 ,然后打印成以下格式

------------ info of Alex Li -----------
Name  : Alex Li
Age   : 22
job   : Teacher
Hobbie: girl
------------- end -----------------

有三种方法可以实现此需求:

(1)
name = input(‘name:‘)
age = int(input(‘age:‘))
print(type(age))
job = input(‘job:‘)
salary = input(‘salary:‘)
info = ‘‘‘
- - - - info of {0} - - - -
name:{0}
age:{1}
job:{2}
salary:{3}
‘‘‘ .format(name,age,job,salary)
(2)
info2 = ‘‘‘
- - - info of {_name}- - -
name:{_name}
jog:{_job}
age:{_age}
salary:{_salary}
‘‘‘.format(_name=name,
_age=age,
_job=job,
_salary=salary,
)
print(info2)

(3)由于里面的 一些信息是需要用户输入的,无法预先知道,因此可以先放置个占位符,再把字符串里的占位符与外部的变量做个映射关系就好啦
name = input("Name:")
age = input("Age:")
job = input("Job:")
hobbie = input("Hobbie:")

info = ‘‘‘
------------ info of %s ----------- #这里的每个%s就是一个占位符,本行的代表 后面拓号里的 name 
Name  : %s  #代表 name 
Age   : %s  #代表 age  
job   : %s  #代表 job 
Hobbie: %s  #代表 hobbie 
------------- end -----------------
‘‘‘ %(name,name,age,job,hobbie)  # 这行的 % 号就是 把前面的字符串 与拓号 后面的 变量 关联起来 

print(info)

%s就是代表字符串占位符,除此之外,还有%d,是数字占位符, 如果把上面的age后面的换成%d,就代表你必须只能输入数字啦

技术分享图片

运行后出现了错误,%d需要一个数字,而不是str,  我们输入的是数字呀,查看数据类型的方法:type()

age = input("Age:")
print(type(age))

执行输出是

Age:22
<class ‘str‘>

这是因为input接收的所有输入默认都是字符串格式!

要想程序不出错,你可以把str转成int

age = int(  input("Age:")  )
msg = "我是%s,年龄%d,目前学习进度为80%"%(‘金鑫‘,18)
print(msg)

这样会报错,因为在格式化输出里,你出现%默认为就是占位符,此时就需要输入80%%,告诉Python解释器这只是一个单纯的%,而不是占位符。

msg = "我是%s,年龄%d,目前学习进度为80%%"%(‘金鑫‘,18)

10,基本运算符

运算符

  运算按种类可分为算数运算、比较运算、逻辑运算、赋值运算、成员运算、身份运算、位运算。

      以下假设变量:a=10,b=20

技术分享图片

技术分享图片

技术分享图片

技术分享图片

针对逻辑运算的进一步研究:

  1,优先级关系为( )>not>and>or,同一优先级从左往右计算。

  2 ,  x or y , x为真,就为x,否则为y;

             x and y,   x为真,就为y,否则为x。

 技术分享图片

   in,not in :

   判断子元素是否在原字符串(字典,列表,集合)中:

11,流程控制语句

(1)if...else 语句

    单分支

if 条件:
    满足条件后要执行的代码

    双分支

"""
if 条件:
    满足条件执行代码
else:
    if条件不满足就走这段
"""
AgeOfOldboy = 48

if AgeOfOldboy > 50 :
    print("Too old, time to retire..")
else:
    print("还能折腾几年!")

这里必须要插入这个缩进的知识点

   Python的一大特色,就是强制缩进,目的是为了让程序知道,每段代码依赖哪个条件。

   Python的缩进有以下几个原则:

  • 顶级代码必须顶行写,即如果一行代码本身不依赖于任何条件,那它必须不能进行任何缩进
  • 同一级别的代码,缩进必须一致
  • 官方建议缩进用4个空格。

    多分支

    if...else ...可以有多个分支条件

if 条件:
    满足条件执行代码
elif 条件:
    上面的条件不满足就走这个
elif 条件:
    上面的条件不满足就走这个
elif 条件:
    上面的条件不满足就走这个    
else:
    上面所有的条件不满足就走这段

 来个匹配成绩的小程序吧,成绩有ABCDE5个等级,与分数的对应关系如下

A    90-100
B    80-89
C    60-79
D    40-59
E    0-39

要求用户输入0-100的数字后,你能正确打印他的对应成绩

score = int(input("输入分数:"))

if score > 100:
    print("我擦,最高分才100...")
elif score >= 90:
    print("A")
elif score >= 80:
    print("B")
elif score >= 60:
    print("C")
elif score >= 40:
    print("D")
else:
    print("太笨了...E")

注意,只要匹配一项就不会再往下执行!!!!

(2)while循环。

  *1,基本循环

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

  *2,循环中止语句 

  如果在循环的过程中,因为某些原因,你不想继续循环了,怎么把它中止掉呢?

  • break用于完全结束一个循环,跳出循环体执行循环后面的语句
  • continue只是终止本次循环,接着还执行后面的循环

例子:break

count = 0
while count <= 100 : #只要count<=100就不断执行下面的代码
    print("loop ", count)
    if count == 5:
        break
    count +=1 #每执行一次,就把count+1,要不然就变成死循环啦,因为count一直是0

print("-----out of while loop ------")

输出

loop  0
loop  1
loop  2
loop  3
loop  4
loop  5
-----out of while loop ------

例子:continue

count = 0
while count <= 100 : 
    count += 1
    if count > 5 and count < 95: #只要count在6-94之间,就不走下面的print语句,直接进入下一次loop
        continue 
    print("loop ", count)

print("-----out of while loop ------")

输出

loop  1
loop  2
loop  3
loop  4
loop  5
loop  95
loop  96
loop  97
loop  98
loop  99
loop  100
loop  101
-----out of while loop ------

*3,while ... else ..

while 后面的else 作用是指,当while 循环正常执行完,中间没有被break 中止的话,就会执行else后面的语句

count = 0
while count <= 5 :
    count += 1
    print("Loop",count)

else:
    print("循环正常执行完啦")
print("-----out of while loop ------")

输出

Loop 1
Loop 2
Loop 3
Loop 4
Loop 5
Loop 6
循环正常执行完啦
-----out of while loop ------

如果执行过程中被break啦,就不会执行else的语句啦

count = 0
while count <= 5 :
    count += 1
    if count == 3:break
    print("Loop",count)

else:
    print("循环正常执行完啦")
print("-----out of while loop ------")

输出

Loop 1
Loop 2
-----out of while loop ------ 

   (3)for循环

           for循环可以用来遍历某一对象,通俗点说,就是把这个循环中的第一个元素到最后一个元素依次访问一次。

           技术分享图片

        基本循环

    for 变量 in 可迭代对象:
do something

for 变量 in 可迭代对象:
        do  something
    else:

do something

 三   编    ascii:字母,数字,特殊字符。没有中文。一个字节一个字符。           2**8 = 256,所以,ASCII码最多只能表示 256 个符号。


万国码:
unicode :
A: 0000 0010 0000 0010 两个字节,表示一个字符。
中: 0000 0010 0000 0010 两个字节,表示一个字符。

升级:
A: 0000 0010 0000 0010 0000 0010 0000 0010 四个字节,表示一个字符。
中: 0000 0010 0000 0010 0000 0010 0000 0010 四个字节,表示一个字符。
缺点: 占空间,浪费资源。

utf-8:最少用一个字节,表示一个字符.
A: 0000 0010
欧洲:0000 00100000 0010
中文:0000 00100000 00100000 0010

gbk国标:
A: 0000 0010
中: 0000 0010 0000 0010

四 python2与python3 区别

          Python2 :(1)源码重复,不规范:

                           (2)默认编码为ascii,不支持中文,加上#-*-coding:utf-8-*-即可;

                           (3)print‘123’与print (123)均可;

                           (4)在python2.x中raw-input=input (python3.x),

                            (5)python2中input只能输出int


          Python3: (1)整合源码,更清晰简单优美;

                          (2)默认编码为utf -8;

                          (3)没有long类型;

                          (4)只能与print (123)



 

 































































以上是关于python基础的主要内容,如果未能解决你的问题,请参考以下文章

常用python日期日志获取内容循环的代码片段

python 有用的Python代码片段

Python 向 Postman 请求代码片段

python [代码片段]一些有趣的代码#sort

使用 Python 代码片段编写 LaTeX 文档

python 机器学习有用的代码片段