Python基础入门

Python基础入门:

Python使用场景:

1、交互式环境使用场景:

一、问题:

  • exit以后代码就没有了(须要本身将代码保存到文件)
  • 每次须要从新输入(或者从文件中复制粘贴到Python交互环境下运行)

二、使用场景

  • 查看帮助信息
  • 快速测试

2、脚本方式运行代码:

一、编写python脚本:

  • 建立.py后缀的文件(命名规则英文大小、写字母 和 数字,不能以数字开头)
  • 编辑内容print('Hello World')
  • 使用python3.5命令后加文件名方式运行文件
  • 代码注释,使用#开头

二、准备编辑器

    1)推荐使用IDE(pycharm、eclipse+pydev、sublime、atom)、不建议使用vi/vim(除非熟练使用)

    2)编辑器配置:

  • 文件编码方式为UTF-8
  • Tab键替换为4个空格
  • 文件换行符使用\n(unix)

三、变量定义&赋值

给数据起一个名字,在后续的代码中使用变量名访问数据python

1)变量名规则:

  • 只能由大小写英文字母、数字、下划线组成
  • 不能以数字开头
  • 避免和python保留字和关键字冲突

2)变量名先定义,后使用

In [1]: pi = 3.1415926

In [2]: radius = 10

In [3]: print(2 * pi * radius)
62.831852

In [4]: print(pi * radius * radius)  
314.15926

In [5]: radius = 20

In [6]: print(2 * pi * radius)
125.663704

In [7]: print(pi * radius * radius)  
1256.63704

四、语句

让计算机作一件事程序员

  • 赋值语句
  • 打印语句

五、接收命令行输入

  • 输入语句
name = input('请输入你的名字:')
print('你的名字是:', name)
  • 声明.py脚本内容使用utf-8编码(须要在python第一条语句前声明)
#encoding: utf-8
print('Hello World')
  • 备注:python2.7使用raw_input

Python数据类型:

1、数值类型

像年龄、身高、体重、分数、圆周率这样的数字vim

一、分类:

     1)按是否带小数点:

  • 整数
  • 浮点数

    2)按是否带负数:

  • 正数
  • 负数

二、四则运算:

加(+)、减(-)、乘(*)、除(/)、整除(//)、余(%)、幂(**)eclipse

注:Python2.7中,整数除(/)整数得整数(能够经过导入from__future__ import division 修改其行为与Python3.5一致)python2.7

2、字符串类型

像名字、一句话描述这样的文本编辑器

一、使用单引号(' ')、双引号(" ")、三个('''  ''')或三个双引号("""  """)引发来的一些字符

二、特殊字符:

  • \        转义符
  • \r       回车
  • \n       换行
  • \t        Tab键
  • \f        换页

三、四则运算

  • 加(+)        必须为两个字符串相加
  • 乘(*)         必须为一个整数

3、类型判断与转换

一、type函数

In [11]: print(type(1))
<class 'int'>

In [12]: print(type(1.2))
<class 'float'>

In [13]: print(type(''))
<class 'str'>

In [14]:

二、类型转换

  • int/str => float

In [16]: print(type(float(1)))
<class 'float'>

In [17]: print(type(float('1.2')))
<class 'float'>
  • float/str => int

In [14]: print(type(int(1.2)))
<class 'int'>

In [15]: print(type(int('1')))
<class 'int'>
  • int/float => str 

In [18]: print(type(str(1)))
<class 'str'>

In [19]: print(type(str(1.2)))
<class 'str'>

练习:

一、定义变量name(str)和age(int), 并打印出 “my name is xx, and I’m xx years old”    

#encoding: utf-8
name = "Li Lei", age = 20
print("my name is", name, ",", "and I'm", age, "years old")

二、提示用户从控制台分别输入name和age,并打印出 “my name is xx, and I’m xx years old”

#encoding: utf-8
name = input("your name is:"); age = input("your age is:")
print("my name is", name, ",", "and I'm", age, "years old")

三、提示用户从控制台两个数字,计算两个数字的和、差、积、商,并进行打印

#encoding: utf-8
n1 = int(input("a number:")); n2 = int(input("a number:"))
print(n1 + n2, n1 - n2, n1 * n2, n1 / n2)

4、布尔类型  

表示真假,只有True/False函数

In [22]: is_boy = True

In [23]: is_girl = False

In [24]: print(is_boy, is_girl)
True False

一、布尔运算

  • 或(A or   B: A、B两个只要一个为真则为真)
  • 且(A and B: A、B两个都为真时,才为真)
  • 非(not A: A为真则为假;A为假则为真)

二、四则运算

  • 加(相似or)、减、乘(相似and)、除

三、类型转换

  • int/str/float => bool(练习0, 1,-1, 0.0, 0.1, 0.2, ‘a’,  ' ')
In [39]: bool(0)
Out[39]: False

In [40]: bool(0.0)
Out[40]: False

In [41]: bool(0.1)
Out[41]: True
...
  • bool => int/str/float

5、流程控制

  • 条件语句
  • 循环语句

一、条件语句:

笑话:测试

程序员的妻子叫程序员去买一斤包子,若是看到卖西瓜的,买一个。一下子,程序员拿着一个包子回来了,妻子问他为何只买一个包子,答曰:看到卖西瓜的了。编码

解释:atom

  • 妻子:

            买一斤包子,若是看到西瓜,就买一个西瓜    

  • 丈夫:

            若是看到西瓜就买一个包子,不然就买一斤包子

妻子:

#encoding: utf-8
print(">>买一斤包子")
show = input("看到西瓜了吗?:")
if show == "看到了":
	print(">>买一个西瓜")

丈夫:

#encoding: utf-8
show = input("看到西瓜了吗?:")
if show == "看到了":
	print(">>买一个包子")
else:
	print(">>买一斤包子")

帮助:http://www.pythontutor.com

  • 根据表达式的真假控制代码的执行流程
  • 关键字:if,elif,else
  • 条件表达式使用:标识条件结束,子语句开始
  • 使用缩进(建议4个空格)表示子语句
  • 从第一个条件开始判断,若是条件为真则执行子语句,不然判断下一个条件,若是全部为假,则执行else中的子语句
  • elif能够有0个或任意多个,else能够有0个或1个

练习:

    1)提示用户从控制台输入一个分数:

    判断分数若是>=90分则打印优秀

    判断分数若是>=80分则打印良好

    判断分数若是>=60分则打印及格

    不然打印不及格

#encoding: utf-8
score = input("请输入你的分数:")
score = float(score)
if score >= 90:
	print("优秀")
elif score >= 80:
	print("良好")
elif score >= 60:
	print("及格")
else:
	print("不及格")

    2)提示用户从控制台输入一个年份,判断年份是否为闰年

    四年一闰,百年不闰;四百年再闰

    示例:

        1900

        2000

        2004

#encoding: utf-8
year = input("请输入年份:")
year = int(year)
if year % 4 == 0 and year % 100 !=0:
	print("闰年")
elif year % 400 == 0:
	print("闰年")
else:
	print("不是闰年")

二、循环语句:

  • 根据表达式的真假,来控制代码是否结束子语句循环执行,若是为真则继续循环执行
while condition:
    code
  • 计算1-100的和
#encoding: utf-8
idx = 1
idx_sum = 0
while idx <= 100:
	idx_sum = idx_sum + idx
	idx = idx + 1
print("sum is:", idx_sum)

练习:循环提示用户在控制台上输入数字或者exit,当用户输入exit后结束程序,并打印全部输入数字的和与平均数

#encoding: utf-8

input_test = input("请输入一个数字或exit(结束):")

input_sum = 0
input_count = 0
while input_test != "exit":
	input_sum += float(input_test)
	input_count += 1
	input_test = input("请输入一个数字或exit(结束):")

if input_count == 0:
	print("sum: 0, avg: 0")
else:
	print("sum:", input_sum, ", avg:", input_sum / input_count)

三、break与continue

  • break 跳出循环
  • continue 跳过本次循环,继续下次循环条件判断
#encoding: utf-8

idx = 0
max_idx = 5
print("break")
while idx <= max_idx:
	idx += 1
	if idx == 3:
		break
	print(idx)
#encoding: utf-8

idx = 0
max_idx = 5
print("continue")
while idx <= max_idx:
	idx += 1
	if idx == 3:
		continue
	print(idx)

列表:

  1. 有序的数据集合
    nums = [1, 5, 6, 3, 2, 5]

     

  2. 获取序列中第n个元素

    nums[n - 1]

     

  3. 遍历集合中全部元素

    #enconding: utf-8
    
    nums = [1, 5, 6, 3, 2, 5]
    for num in nums:
        print(num)
相关文章
相关标签/搜索