一.python介绍

   Python
(United Kingdom失声:/ˈpaɪθən/ U.S.发音:/ˈpaɪθɑːn/卡塔尔(英语:State of Qatar), 是生龙活虎种面向对

象的解释型计算机程序设计语言,由比利时人 Guido van
Rossum 于1990 年发

明,第多个驾驭发行版发行于1992年。

  
Python是从头至尾的自由软件, 源代码和平解决释器CPython遵守 GPL公约 。P

ython语法简洁清晰,特色之一是强制用空白符作为言语缩进。 

  
Python具备丰硕和强盛的库。它常被别称为胶水语言,可以把用其余语言

创设的各样模块(尤其是C/C++卡塔尔(英语:State of Qatar)比较轻易地统大器晚成在同盟。管见所及的生龙活虎种采纳情状是,

利用Python快速生成程序的原型(有的时候依旧是程序的最终分界面卡塔尔,然后对在那之中有

特意需求的部分,用更妥帖的言语改写,举例3D游戏中的图形渲染模块,品质

务求特别高,就足以用C/C++重写,而后封装为Python能够调用的扩充类库。

凯旋门074网址,内需介怀的是在你使用扩张类库时恐怕供给思忖平台难点,某个恐怕不提供跨平

台的落实。

二.python解释器

    1.python解释器的效劳是将程序员写得代码翻译成机器语言

    2.python脚下有三种版本:python2.7.x和python3.x

    3.怎么样落到实处python解释器多版本共存?

     下载安装多少个版本的python解释器->找到各自的目录将内部的python.

     exe,将其复制粘贴复件重命名叫python2和3->打开计算机高档属性

     中的情状变量–>增多系统情状变量->将python多少个本子的分别根目

     录路线复制进境遇变量中

三.python程序的运维格局

1 python的三种运市场价格势

     (1):在终点解释器中写程序运转(交互作用式方式)

        
优点:方便调节和测验

        
弱点:不可能长久保存,不相符开垦

     (2):将代码写到文件中,再调用文件路径运转

        
优点:永世保存,符合开辟

        
劣点:调节和测量检验微微麻烦

2 python代码运营进度

     
运营python解释器–>将文件中的代码读入内部存储器–>解释实践

        
  

四.变量

1.定义

      变量是大器晚成种能够体现意况变化的建制

2.变量的留存意义

      程序的施行本质正是一文山会海变化

3.定义变量的注意事项

     (1)首字母无法是数字

     (2)只好由数字、下划线、意大利语字母构成

澳门凯旋门游戏网址,     (3)无法与根本字相似,轻易混淆黑白

4.标准书写

     
为了使长串代码特别轻便阅读理解,选用驼峰体只怕下划线式          

5.变量的几个特色

           id:地址

          type:数据类型

          value:值 

代码演示

x = 'SongXueXiang'
print(id(x), type(x), x)
运行结果

2344171221488 <class 'str'> SongXueXiang

6.“=”与“is”的区别:

澳门凯旋门注册网址,“=”相比的是值

代码演示

          >>> x='name:alex,age:73'
          >>> x='name:alex,age:73'
          >>> id(s1)
          2506534695408
          >>> id(s2)
          2166679483056
          >>>
          >>> s1 is s2
          False
          >>> s1 == s2
          True
            

“is”相比较的是id

代码演示

          >>> x=1
          >>> y=x
          >>>
          >>>
          >>> id(x)
          1767599584
          >>> id(y)
          1767599584
          >>> x == y
          True
          >>> x is y
          True 

7.常量

   定义:不改变的量(举例π)

五.数据类型

1.分类:

   数字类型、字符串类型、列表、字典、布尔类型

2.数字类型:

   int整型(用于整数),float浮点

3.二种数字类型的区分:

   int和float类型只能存三个值,不可变(值变,id就变) 

4.字符串类型:

   在python中,加了引号的字符正是字符串类型,python并未字符类型

(1卡塔尔(英语:State of Qatar)字符串相加相乘:

Python是纯粹的自由软件【凯旋门074网址】。代码演示

  x = "杨"
  y = "宋"
  print(x+y)
  print(x*10)

#代码运行结果
杨宋
杨杨杨杨杨杨杨杨杨杨

(2卡塔尔国字符串类型方法运用 

  1) 移除name变量对应的值两边的空格, 并输出处理结果处理方法.strip()去空值

 name = "     aleX".strip()
 print(name)

   2卡塔尔国判定name变量对应的值是或不是以”al”开端, 并输出结果管理方法.startswith()方法剖断以前

 name = "aleX"
 name.startswith('al')
 print(name.startswith('al'))    

  3) 判断name变量对应的值是否以"X"结尾, 并输出结果
处理方法.endswith()方法判断开头         

name = "aleX"
name.endswith('X')
print(name.endswith('X'))

  4) 将name变量对应的值中的 “l” 替换为 “p”, 并输出结果处理方法.replace()方法替换

 name = "aleX"
print(name.replace('l','p'))

   5) 将name变量对应的值根据 “l” 分割, 并输出结果。处理方法.split()

 name = "aleX"
 print(name.split('l'))

  6) 将name变量对应的值变大写, 并输出结果
处理方法.upper()

 name = "aleX"
print(name.upper()) 

  7) 将name变量对应的值变小写, 并输出结果
处理方法.lower()

 name = "aleX"
 print(name.lower()) 

   8) 请输出name变量对应的值的第2个字符?处理方法:索引取值

 name = "aleX"
 print(name[1]) 

   9) 请输出name变量对应的值的前3个字符?处理方法:切片

 name = "aleX"
 print(name[0:3:1]) 

   10卡塔尔(قطر‎请输出name变量对应的值的后2个字符?
管理方法:切丝

正向切片name = "aleX"
             print(name[2:4:1])



反向切片 name=' aleX'
             print(name[-2:])    

   11)请输出name变量对应的值中 “e” 所在索引位置?
处理方法.index()

       name = "aleX"
       print(name.index('e'))

   12卡塔尔(قطر‎获取子种类, 去掉末了二个字符。如:
oldboy则获取oldbo。

name = "aleX"
a=name[:-1]
 print(a)

   13卡塔尔(英语:State of Qatar)字符串循环打字与印刷

1.
name='sxx'
i=0
while i < len(name):
    print(name[i])
    i+=1
2.
name='sxx'
for i in name:
  print(i) 

5.列表:

(1)定义:

   [
]内能够有多个值,类型随便,逗号分隔,可变,有序

Python是纯粹的自由软件【凯旋门074网址】。示例

songxuexiang=['sxx','eat',16]

(2卡塔尔列表的增加和删除改查

   1)索引取值

n=[1,2,3,4]
print(n[1])

   2).列表的切成条

x=['aa','bb','cc','dd']
print(x[1:2])

   4).列表的长度

x=['aa','bb','cc','dd']
print(len(x))

   5).成员运算in和not
in

x=['aa','bb','cc','dd']
print('aa' in x) 

   6).列表的充实

x=['aa','bb','cc','dd']
x.append['ee']
print(x)

Python是纯粹的自由软件【凯旋门074网址】。   
7卡塔尔国列表内去除

1.
       x=['aa','bb','cc','dd']  
       del x[1]
        print[x]
2.
        x.remove(aa)     单纯的删除
        print(x)
3
        x.pop()   默认是从末尾删,值违背删去,被取走,通过x.pop可以调用
        x.pop(0)
        print(x)

   8)列表循环

x=['aa','bb','cc','dd']
i=0
while i<len(x)
     print(x[i])
        i+=1



for  i  in  range(len(x)):
print(i,x[i])

列表格式演练

题:

students = [
    {'name': 'sxx', 'age': 18, 'sex': 'male'},

    {'name': 'lxx', 'age': 38, 'sex': 'fmale'},

    {'name': 'hxx', 'age': 48, 'sex': 'male'},

    {'name': 'qxx', 'age': 58, 'sex': 'fmale'},

    {'name': 'liwenzhou', 'age': 68, 'sex': 'male'}, ]
   要求循环打印所有学生的详细信息,格式如下
 < name: egon age: 18 sex: male >
 < name: alex age: 38 sex: fmale >
 < name: wxx age: 48 sex: male >
 < name: yuanhao age: 58 sex: fmale >
 < name: liwenzhou age: 68sex: male >

解:
n = 0
while True:
    if n < 5:
        name=students[n]['name']
        age=students[n]['age']
        sex=students[n]['sex']
        print('<name:%s,age:%s,sex:%s>'%(name,age,sex))
    else:
        break
    n += 1          

Python是纯粹的自由软件【凯旋门074网址】。6.元组

(1)定义:

   (
卡塔尔(قطر‎内得以有多个值,类型随便,逗号分隔,也便是不可变的列表,有序 

  x=('a','b','c')        

   
1)按索引取值(正向取+反向取卡塔尔(قطر‎:      

  x=('aa','bb','cc','dd')
    print(n[1])

    2):元组的切块 

    x=('aa','bb','cc','dd')
      print(x[1:2])

    3):元组的尺寸

    x=('aa','bb','cc','dd')
        print(len(x))    

    4):元组的大循环

    x=('aa','bb','cc','dd')
    i=0
    while i<len(x)
         print(x[i])
            i+=1



    for  i  in  range(len(x)):
        print(i,x[i])        

   5)查询职位

          x=('aa','bb','cc','dd')
             print(t.index('aa'))        

Python是纯粹的自由软件【凯旋门074网址】。   6)查询成分个数

         x=('aa','bb','cc','dd')
            print(t.count('x'))

7.字典

(1)定义:

   {
}内得以有四个值,类型随便,逗号分隔,冬日,不可变

    dic={'name':'sxx','age':18}

   1)按key存取值:可存可取 

        dic={'name':'sxx'}
        dic['age']=10
            print(dic)       

   2)改大小写.upper(卡塔尔国方法和.lower(卡塔尔(قطر‎方法

        x={'name':'sxx'}
            dic['name']=dic['name'].upper() 

   3)长度运算

        dic={'name':'sxx','age':18}
            print(len(dic))

   4)字典内成分删除

        dic={'name':'sxx','age':18}
        del dic['name']
            print(dic)        

       dic={'name':'sxx','age':18}
       res=dic.pop('name')
            print(res)   

   5)字典取值不分明key时,防止不当

dic={'name':'sxx','age':18}
print(dic.get('namexxxxxxxxxxx'))

   6卡塔尔(英语:State of Qatar)字典更新

        dic={'name':'sxx','age':18}
        dic.update({'x':1,'age':19})
            print(dic)

对与老字典来说,更新指的是,新字典中有而老字典中没有则添加,
新有而老有,则覆盖      

   7卡塔尔(英语:State of Qatar)字典创建

 1.

     good_info={
                     'name':None,
                     'price':None,
                     'count':None
                         }

  2.

       print({}.fromkeys(['name','age','sex'],None))

   8)字典setdefaul方法

    dic={'name':'sxx','age':18}
    res=dic.setdefault('name',SXX')
      print('返回值',res)
        print(dic)

    字典有中有key,则不修改,返回原key对应的原值
    没有对应的key,则添加,返回添加的key对应的value      

9.集合

(1).定义:

    {
}内以,分隔开分离的要素,可村多少个值,不可变,严节

(2卡塔尔:常用操作

    1)去重

        s1=set('hello')
        print(s1)  

    2)关系运算

stus1={'sxx','yb','张全蛋','李铁蛋','wer'}
stus2={'李二丫','wxx','liudehua','sxx','yb'}

既是stuws1里的又是stus2里的的学生:交集
print(stus1& stus2)
print(stus1.intersection(stus2))



所有的学生:并集
print(stus1| stus2)
print(stus1.union(stus2))




只是stus1里的,不在stus2里的:差集
print(stus1-stus2)
print(stus1.difference(stus2))



没有同时在stus1和stus2的学生姓名:交叉补集
print(stus1^stus2)
print(stus1.symmetric_difference(stus2))                   

10.单引号、双引号、多引号的分别

   引号运用方法:  

       字符串类型如若有单引号则外面套双引号,

       
反之双套单三引号一般用于多行字符串

代码演示

x='''
我有一头小毛炉啊,
我从来也不骑,
有一天我心血来潮骑着它去赶集
'''
print('x') 

11.布尔品种首要:

   1、None,0,空(空字符串,空驶列车表,空字典等)二种情景下

     布尔值为False

    2、其余均为真

12.%s和%d的区别:

     %s:能接纳字符串和数字

     %d:只可以抽出数字

x=[aa,bb,cc,dd]
print('一:%s;二%s'%(x[1]),x[2])

x=[aa,bb,cc,dd]
print('一:%d;二%d'%(x[1]),x[2])##这是为了说明%d只能接
                                  ##收数字,运行会报错  

6:基本运算符

    算数运算符

澳门凯旋门游戏网址 1

比较运算符

澳门凯旋门游戏网址 2

 

 赋值运算符    

澳门凯旋门游戏网址 3

逻辑运算符

澳门凯旋门游戏网址 4

7.if…..else语句

   
含义:如果…..那么

1.客户登入验证

user_name = 'seven'
user_password = '123'
inp_name = input('请输入用户名:')
inp_password = input('请输入用户密码:')
if user_name == inp_name and user_password==inp_password: 
   print('登陆成功')     
else:
     print('用户名错误')

8.while循环

顾客验证错误一遍锁定

user_name = 'seven'
user_password = '123'
n = 0
while True:
    if n < 3:
        inp_name = input('请输入用户名:')
        inp_password = input('请输入用户密码:')
        if user_name == inp_name:
            print('登陆成功')
        else:
            print('用户名错误')
        n += 1
    else:
        print('尝试次数过多,锁定')
        break
    print('尝试次数:', n)

巡回嵌套

name='sxx'
password='123'
tag=True
while tag:
    inp_name=input('用户名: ')
    inp_pwd=input('密码: ')
    if inp_name == name and inp_pwd == password:
        while tag:
            cmd=input('>>: ')
            if not cmd:continue
            if cmd == 'quit':
          tag=false
                  break
            print('run <%s>' %cmd)
    else:
        print('用户名或密码错误')
        continue
    break

轻便易行的购物小程序

msg='''
1.注册
2.登录
3.退出
'''
sp='''
编号           商品          价格
  1             mac          20000
  2           lenovo         10000
  3            apple         200
  4            tesla         100000
'''
goods = [
    {'name': 'mac', 'price': 20000},
    {'name': 'lenovo', 'price': 10000},
    {'name': 'apple', 'price': 200},
    {'name': 'tesla', 'price': 100000},
]
m=[]
h={}
n=1
tag=True
print('欢迎进入商城')
while tag:
    print(msg)
    with open('b', mode='r', encoding='utf-8') as f:
     for line in f:
        l=line.split(',')
        h.setdefault(l[0])
        h[l[0]]=l[3]
     inp_xx=input('注册请输入1,登录请输入2,退出请按3:').strip()
     if inp_xx=='1':
        print('欢迎新用户')
        inp_name = input('输入姓名').strip()
        if inp_name in h:
            print('存在该用户,请重新注册或登陆')
            continue
        else:
            inp_sex = input('输入性别').strip()
            inp_age = input('输入年龄').strip()
            inp_password=input('请输入下次登录密码').strip()
            with open(r'b', mode='at', encoding='utf-8') as f:
                f.write('\n%s,%s,%s,%s,0' % (inp_name,inp_sex,inp_age,inp_password))
                print('注册成功,')
                print('用户信息(姓名:%s,性别:%s,年龄:%s,密码:%s)' % (inp_name,inp_sex,inp_age,inp_password))
                continue
     elif inp_xx=='2':
        while tag:
            inp_name = input('输入用户名:').strip()
            inp_password = input('输入密码:').strip()
            if inp_name in h and  inp_password == h[inp_name]:
                print(sp)
                salary = input("请输入你的金额").strip()
                i = input('请输入商品编号').strip()
                while tag:
                    salary = int(salary)
                    if i  in ['1','2','3','4']:
                        i = int(i) - 1
                        name = goods[i]['name']
                        price = int(goods[i]['price'])
                        while tag:
                            if price <= salary:
                                m.append(name)
                                salary -= price
                                cmd = input('购买成功,退出请输入quit,继续浏览请回复随意字符:')
                                if cmd == 'quit':
                                    print('你购买的商品为%s,你的余额为%s' % (m, salary))
                                    tag = False
                                else:
                                    print(sp)
                                    i=input('还要买什么,请输入编号')
                                    break
                            else:
                                print('你的余额不够')
                                cz = input("充值")
                                cz = int(cz)
                                salary += cz
                                print("用户名:%s;余额:%s" % (inp_name, salary))
                                continue
                    else:
                        print("请输入编号")
            elif n < 3:
                print('用户名、密码错误')
                print('尝试次数', n)
                n += 1
            else:
                print('尝试次数过多')
                break

     elif inp_xx=='3':
        print("谢谢惠顾")
        break
     else :
        print("请输入1,2或3")
        continue

  

 

 

 

 

 

 

  

 

  

 

相关文章