大鹏

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

第三章 成为高手前必须知道的一些基础知识

 本章内容:

 

1、变量

变量(variable),因为它是可以变化的,不是恒量。变量的内容可以是字符串、列表、元组等

teacher = '小甲鱼'
print(teacher)
teacher = '老甲鱼'
print(teacher)
#变量的运算
#这种语法在python里叫字符串的拼接
myteacher = '小甲鱼'
yourteacher = '老甲鱼'

ourteacher = myteacher + yourteacher
print(ourteacher)

 

使用变量需注意:

1、在使用变量之前,需要对其先赋值。

2、变量名可以包括字母、数字、下划线,但变量名不能以数字开头

2、区分大小写:字母可以是大写或者小写,但大小写是不同的。如(FishC 和 fishc是不一样的)

3、等号(==)是赋值的意思,左边是变量名,右边是值,不可写反

4、变量命名需要专业一点

 

2、字符串

字符串就是引号内的一切东西,也叫文本。

与数字是不一样的

 字符串的创建:

#字符串的创建:使用单引号或者双引号,把内容括起来。(单引号或者双引号必须成对)
'python l love you'
"python I love you"

 

如果字符串内容中需要出现单引号或者双引号怎么办?

#第一种方法:是使用转义字符(\)对字符串中的引号进行转义
'Let\'s go'

#方法二:利用python既可以使用单引号,也可以使用双引号的特点
"Let's go "

 

3、原始字符串

使用原始字符串的一个目的,就是处理有反斜杠本事引起的问题,如'\n','c:\now'等

string1 = 'C:\\now'
string2 = r'C:\now'
print(string1,string2)
运行结果:
C:\now C:\now

注意的是:无论是否是原始字符串,都不能以反斜杆结尾。反斜杆放在字符串末尾表示该字符串还没有结束,换行的意思

 

#反斜杆放在字符串末尾表示该字符串还没有结束,换行的意思
string = 'fishc\'' \
        'dsdfd \'' \
        'sfdfd '
print(string)

运行结果:
fishc'dsdfd 'sfdfd 

 

如何解决这一的问题呢,我们采用下面的方法:

#对反斜杠本身进行转义,在进行字符串的拼接
string = r'FishC' + '\\' print(string) 运行结果: FishC\

 

4、长字符串

使用三重引号字符串(“”“ 内容”“”)。多行注释也可以用三重引号

print("""
hello,python\
heleis ,'小甲鱼'\
OK

""")

运行结果:
hello,pythonheleis ,'小甲鱼'OK

 注意:初学者容易犯的错是误用中文的标点符号。切记,编程中使用的标点符号都是英文的!

 

5、带着问题继续学习:思考,改进我们的小游戏

小甲鱼做了一下总结,大概有以下几个方面需要改进:

  • 猜错的时候程序应该给点提示,例如告诉用户输入的值是大了还是小了。
  • 每运行一次程序只能猜一次,应该提供多次机会给用户猜测。
  • 每次运行程序,答案可以是随机的。因为程序答案固定,容易导致答案外泄。

 

 

6、条件分支

Python的比较操作符:

 

条件分支:

 

 拼接程序: 写出第一个要求

if guess == 8:
    print('哇草,你是小甲鱼心里的蛔虫吗?')
    print('哼,猜中了也没有奖励')
else:
    if guess > 8:
        print("哥,大了大了~~")
    else:
        print("嘿,小了!小了!!")
print("游戏结束,不玩啦~~")
View Code

 

 7、while循环

带着问题:第二个改进要求:程序应该提供多次机会给用户猜测,专业点来讲就是程序需要重复运行某些代码,继续学习

#写出游戏的第二个要求
while True:
    temp = ('不妨猜一下小甲鱼现在心里想的是哪个数字:')
    guess = int(temp)
    if guess == 8:
        print('哇草,你是小甲鱼心里的蛔虫吗?')
        print('哼,猜中了也没有奖励')
    else:
        if guess > 8:
            print("哥,大了大了~~")
        else:
            print("嘿,小了!小了!!")
    print("游戏结束,不玩啦~~")

 

用到新的知识点:

1、布尔类型: True 和False ,

2、使用and逻辑操作符

 

8、引入外援:random模块

第三个改进要求:每次运行程序产生的答案是随机的。
我们需要引入外援:random模块
这个random模块里边有一个函数叫做:randint(),Ta会返回一个随机的整数。
我们可以利用这个函数来改造我们的游戏!

import random
secret = random.randint(1,10)
print('------------------我爱鱼C工作室------------------')
temp = input("不妨猜一下小甲鱼现在心里想的是哪个数字:")
guess = int(temp)
while guess != secret:
    temp = input("哎呀,猜错了,请重新输入吧:")
    guess = int(temp)
    if guess == secret:
        print("我草,你是小甲鱼心里的蛔虫吗?!")
        print("哼,猜中了也没有奖励!")
    else:
        if guess > secret:
            print("哥,大了大了~~~")
        else:
            print("嘿,小了,小了~~~")
print("游戏结束,不玩啦^_^")

 

 

9、闲聊数据类型

#1、python 的变量像标签,想贴哪里就贴哪里
#2、无论是双引号还是单引号或者三引号,都是字符串
#不带引号的是数字
'520'
520

#字符串相加,叫字符串拼接
print('520'+'1314')

 

9.1整数

int(5)

 

9.2 浮点型

>>> a =0.0000000000000000000000025
>>> print(a)
2.5e-24
>>> 

E记法,使用大E或者小e都可以,1.5x10000 ,可以写成1.5e4

 

9.3 布尔类型

True ,False,0,1

 

9.4数据类型的转换

 

 9.5 获取关于类型的信息

使用type()函数

>>> type('520')
<class 'str'>
>>> type(520)
<class 'int'>
>>> type(5e20)
<class 'float'>
>>> type(True)
<class 'bool'>
>>> 

使用isinstance()函数。

#这个BIF函数有两个参数,第一个是待确定类型的数据;第二个是指定一个数据类型
#isinstance()会根据两个参数返回一个布尔类型的值,True表示类型一致,False表示类型不一致

a ='小甲鱼'
print(isinstance(a ,str))
print(isinstance(520 ,str))
print(isinstance(520 ,int))

运行结果:
True
False
True

 

 

10、常用操作符

 

10、1算数运算符

 

注释:/,真除法,

//地板除:计算结果取比商小的最大整型,也就是舍弃小数的意思。

%求余: 5%2,结果为1

 

比较运算

 

 赋值运算

 

 逻辑运算

 

 成员运算

 

 

位运算:这个比较恶心,涉及到二进制移位操作

 

#!/usr/bin/env python
# -*- coding:utf-8 -*-

a = 50      #二进制表示50=110010
b = 150     #二进制表示150=10010110
c = a & b   #与运算
print(c)    #试了一把结果出来的值是18,这个的话尽量忘记吧。和后面的| ;^; ~ ;<< ;>>;这些玩意儿都一路货色
d = a | b
print(d)    #或运算,得到的结果182
e = a ^ b
print(e)    #异或的操作得到结果164
#f = a ~ b
#print(f)
g = a << 2
print(g)    #左移位2下得到结果200
h = a >> 2 
print(h)    #右移位2得到结果12

 

其他的数据操作,请看此处的引用:http://www.runoob.com/python/python-operators.html

 

 

 

 10.2 优先级的问题

 

逻辑操作符的顺序: not and or

 

 

作业:

[课后作业] 第003讲:插曲之变量和字符串 | 课后测试题

[课后作业] 第004讲:改进我们的小游戏 | 课后测试题

[课后作业] 第005讲:闲聊之Python的数据类型 | 课后测试题

[课后作业] 第006讲:Pyhon之常用操作符 | 课后测试题

 

 

扩展阅读

 

posted on 2018-11-25 17:20  pf42280  阅读(695)  评论(0)    收藏  举报