一、 第一个程序
#第一个python程序练习
print("hello world")
#——单行注释,多行注释用两个"""或'''
print——内建函数,用于输出结果
二、 基本数据处理
数据类型:
#数值型
total=100 #整数
product=234.94#浮点数
#布尔型
switch=True
turn_on=False
#字符串型
title="happy new year"
三、input和print
3.1 print用来输出指定的字符串或数值,语法如下:
print(项目1,项目2,……,sep=分隔字符,end=终止符)
也支持格式化功能,zh只要由“%”字符与后面的格式化字符串来控制输出格式
print(“项目”%(参数行))
%s代表输出字符串、%d代表输出整数、%f代表输出浮点数
name="陈大忠"
age=30
print("%s 的年龄是 %d 岁" % (name, age))
#运行结果
陈大忠 的年龄是 30 岁
转义字符:
- \t 水平制表字符
- \n 换行符
- \"显示双引号
- \'显示单引号
- \\显示反斜杠
例:
print('程序语言\n越早学越好')
程序语言
越早学越好
3.2 input 是输入指令
变量=input(提示字符串)
height=input("请输入你的身高:")
print(height)
请输入你的身高:185
185
input输入的内容是字符串,若要将其转换为整数,则需通过内建函数int()
使用print输出时还可以制定数值以哪种形式输出
例
iVal=input('请输入8进制数值:')
print('您所输入8进制数值,其对应的10进制数为:%d' %int(iVal,8))
print('')
iVal=input('请输入10进制数值:')
print('您所输入10进制数值,其对应的8进制数为:%o' %int(iVal,10))
print('')
iVal=input('请输入16进制数值:')
print('您所输入16进制数值,其对应的10进制数为:%d' %int(iVal,16))
print('')
iVal=input('请输入10进制数值:')
print('您所输入10进制数值,其对应的16进制数为:%x' %int(iVal,10))
print('')
请输入8进制数值:65
您所输入8进制数值,其对应的10进制数为:53
请输入10进制数值:53
您所输入10进制数值,其对应的8进制数为:65
请输入16进制数值:87
您所输入16进制数值,其对应的10进制数为:135
请输入10进制数值:135
您所输入10进制数值,其对应的16进制数为:87
四、运算符
4.1 算术运算符略
4.2复合赋值运算符
x+=1 #即x=x+1
x-=9 #即x=x-9
x*=6 #即x=x*6
x/=2 #x=x/2
x//=2#x=x//2
x%=5 #x=x%5
4.3 逻辑运算符
not and or
4.4 位运算符
位运算就是二进制位逐位进行运算。
整数转换为二进制 :内建函数bin()
位运算符:
- & a&b:a、b都为1时,返回1
- | a|b:a、b有一个为1 返回 1
- ^ a^b a、b不相同返回1 ,相同返回0
- ~a 求反运算 1变成0 0变成1( 记住 ~a=-(a+1))
a=9 ;b=10
print(bin(a)) #0b1001
print(bin(b)) #0b1010
print(a&b) #1000 即8
print(a|b) #1011 即11
print(a^b) #0011 即3
print(~a) #1001 补码:-1001 取反后加1:-0101 取反:-1010 即-10
五、流程控制
5.1 if语句
冒号“:”后面在缩排,默认四个空格
month=int(input('请输入月份: '))
if 2<=month and month<=4:
print('充满生机的春天')
elif 5<=month and month<=7:
print('热力四射的夏季')
elif month>=8 and month <=10:
print('落叶缤纷的秋季')
elif month==1 or (month>=11 and month<=12):
print('寒风刺骨的冬季')
else:
print('很抱歉没有这个月份!!!')
5.2 for循环
for循环又称为计数循环,语法如下:
for item in sequence
#for的程序区块
else:
#else的程序区块,可加入或不加入
python中提供了range函数搭配使用,主要功能是建立整数序列,语法如下:
range([起始值],终止条件[,步长值])
起始值默认为0,可以省略;步长值默认为1;终止条件不可省略
如range(5)代表从0开始输出5个元素,即0,1,2,3,4
range(1,6)代表从1开始到6(6不包括)即1,2,3,4,5
range(2,10,2)即2,4,6,8
for循环例子:
sum=0
number=int(input('请输入整数: '))
#递增for循环,从小到大打印出数字
print('从小到大排列输出数字:')
for i in range(1,number+1):
sum+=i #设置sum为i的和
print('%d' %i,end='')
#设置输出连加的算式
if i<number:
print('+',end='')
else:
print('=',end='')
print('%d' %sum)
sum=0
#递减for循环,从大到小打印出数字
print('从大到小排列输出数字:')
for i in range(number,0,-1):
sum+=i
print('%d' %i,end='')
if i<=1:
print('=',end='')
else:
print('+',end='')
print('%d' %sum)
5.3 while语句
使用while循环要小心设置离开的条件,万一不小心形成无限循环,需同时按ctrl+c强行中断程序。
由于python中没有do while这类的循环,可以参考下列范例:
sum=0
number=1
while True:
if number==0:
break
number=int(input('数字0为结束程序,请输入数字: '))
sum+=number
print('目前累加的结果为: %d' %sum)
#结果
数字0为结束程序,请输入数字: 21
目前累加的结果为: 21
数字0为结束程序,请输入数字: 32
目前累加的结果为: 53
数字0为结束程序,请输入数字: 0
目前累加的结果为: 53
六、其他常用的类型
6.1 string字符串
赋值,如:str="happy"
内建函数str()可以将数值数据转化为字符串,如str(123)
可以用[]运算符获取单个字符或者子字符串
例如
msg="No pain, no gain"
print(msg[2:5])#前包后不包
print(msg[6:14])
print(msg[6:])#第6到最后一个元素
print(msg[:5])#第01234个元素
print(msg[::-1])#反转
##结果
pa
n, no ga
n, no gain
No pa
niag on ,niap oN
其他几个实用的函数
len() 获取字符串长度
count() 找出字符串出现的次数
split() 可以根据sep设置字符来分割字符串
例
data='dog cat cattle horse'
print(data.split())#按空格分割
wordB='dog/cat/cattle/horse'
print('字符串二:',wordB)
print(wordB.split(sep='/'))#按/分割
##结果
['dog', 'cat', 'cattle', 'horse']
字符串二: dog/cat/cattle/horse
['dog', 'cat', 'cattle', 'horse']
find() 检测字符串中是否包含子字符串,并返回其位置,注意索引是从0开始的
upper()和lower()大小写转换
6.2 list列表
列表是一种以中括号[] 存放不同类型数据的有序数据类型
列表是一种可变的序列类型,列表中的每一个元素都可以通过索引来取得其值
append()增加列表元素
len() 获取列表长度
可以用[] 获取列表中的元素
sort() 对列表的元素进行排序 数值和字符串都可以排序
#声明字符串数组并初始化
newspaper=['1.北京晚报','2.作家文摘','3.参考消息', \
'4.证券报','5.不需要']
#字符串数组的输出
for i in range(5):
print('%s ' %newspaper[i], end='')
try :
choice=int(input('请输入选择:'))
#输入的判断
if choice>=0 and choice<4:
print('%s' %newspaper[choice-1])
print('谢谢您的订购!!!')
elif choice==5:
print('感谢您的参与!!!')
else:
print('数字选项输入错误')
except ValueError:
print('所输入的不是数字')
1.北京晚报 2.作家文摘 3.参考消息 4.证券报 5.不需要 请输入选择:3
3.参考消息
谢谢您的订购!!!
6.3 tuple元组和dict字典
元组tuple也是一种有序数据类型,它的结构和列表相同,以()小括号存放元素,元组中的元素不能任意更改其位置以及它的内容值。
字典dict 存储的数据为 键key和值value 所对应的数据。字典中的数据是没有顺序性的,它是使用“键” 来查询“值”的,除了使用大括号{}产生字典外,也可以用dict()函数