本帖最后由 果丹卷 于 2021-1-18 22:35 编辑
一、工作内容9:00-20:00
1.安装python3.8.5和visual studio code
2.输入与输出print('你好,中国!')
print('你好','中国','西安')
print(100)
print(100+200)
print('100+200')
print ('100+200=',100+200)
name=input('What is your name?')
print ('My name is',name)
3.数据类型
# 整数 默认为十进制整数
3 0 -10
# 十六进制整数
0xfff000
# 八进制整数
0o7345
#二进制整数
0b1001101010
#浮点数
3.1415926
314.0
3.14e2 # e2表示10的2次方
# 字符串
'abc'
"abc"
"I'm fine"
# \为转义字符
'I\'m fine'
'I\'m \n fine' # \n为换行符
'I\'m \t fine' # \t为制表符
print('\\')
print('\\\\\\n\\\\')
print(r'\\\n\\') # r表示作为普通字符处理
print('我叫\n张三')
print('''我叫
张三''')
#布尔值
True #真
False #假
# and or not
print (True and True)
print (3>2 and 2<1)
print (3>2 or 2<1)
print (not 3>2)
# 空值
None
#变量
#在python中数据是有类型的,而变量是没有类型的
name = 'tom'
age = 25
weight = 60.5
flag = True
name = 3.14
#变量的命名规则
#变量名必须是大小写的英文,数字或_的组合,且不能以数字开头,python对大小写敏感case-sensitive
age = 5 Age = 6 age2 = 3 _age = 7 my_age = 30 myAge = 30
# 常量,全部字母大写
PI = 3.1415926
4.字符串和编码
每一个字符都对应有一个整数,把该整数称为该字符的编码code
American standard code for information interchange
ASCII 一个字节
0 1 bit位
8bit为一组,称为byte字节
1024 byte 称为K
1024 K 称为1Mb
1024 M 称为1Gb
1G = 1024*1024*1024byte
中文 编码集 GB-2312 GBK
Unicode 编码集 universal 2-4个字节表示一个字符
utf-8 编码集 1-4字节表示一个字符
#ord(char) 返回字符对应的编码
print(ord('a'),ord('刘'),ord('国'))
#chr()返回编码对应的字符
print(chr(97)) print(chr(65)) print(chr(3000))
#二进制转十进制
print(bin(10))
#八进制转十进制
print(oct(10))
#二进制转十六进制
print(hex(10))
#转十进制
print(int(0b1010))
print(int(0o7070))
print(int(0xd0a0))
#把字符串变成对应的编码的过程
print('abc'.encode('ascii'))
print('a'.encode('ascii'))
print('a'.encode('utf-8'))
print('中国'.encode('utf-8'))
print('中国'.encode('gbk'))
#把字符串对应的编码变成字符串的过程
print(b'abc'.decode('ascii'))
print(b'\xe4\xb8\xad\xe5\x9b\xbd'.decode('utf-8'))
print(b'\xd6\xd0\xb9\xfa'.decode('gbk'))
5.格式化输出
#我叫×××,我今年××岁
%格式化输出 %s字符串 %d整数 %f浮点数 占位符 不知道用什么格式时就用%s
name=input('请输入你的姓名:')
age=input('请输入你的年龄:')
print('我叫%s,我今年%d岁'%(name,int(age))
print('我叫{0},我今年{1}岁'.format(name,age))
r=10/3
print('10/3=%s'%r)
print('10/3=%.2f'%r)
6.列表和元组
列表是有序的,列表中的元素可以是不唯一的,允许重复
#列表 下标 0 1 2 3 4
names = ['赵梦冰','张荣亮','侯富君','王颜丽','焦新瑞']
print(names)
#列表长度
length = len(names)
print('length=%d'%length)
#利用元素下标获取列表中元素
#列表下标范围0:(len(names)-1)
print(names[3])
#获取列表中最后一个元素
print(names[len(names)-1])
print(names[-1])
#向列表中添加元素
#.append() 添加到列表末尾
names.append('代金鑫')
print(names)
#添加到指定位置
names.insert(2,'武浩杰')
print(names)
#删除元素
#删除并返回列表末尾的元素
names.pop()
#删除指定下标的元素
names.pop(2)
#修改
names[0]='赵萌萌'
#二维列表
o=[1,2,[3,4],5,6]
print(o[2][1])
#空列表
p=[]
元组是不可变的,只可以查询,方式同列表,传递数据时使用
names = ('赵梦冰','张荣亮','侯富君','王颜丽','焦新瑞')
#空元组
q=()
print(q)
#只有一个元素的元组
o=(6,)
print(o)
21:00-23:00
#练习打字
# 作业
1.在交互模式下输入 import this。查看并翻译结果
Python之禅 蒂姆·彼得
漂亮优于丑陋
明确优于隐晦
简单优于复杂
复杂优于繁复
扁平优于嵌套
稀疏优于拥挤
可读性很重要
尽管实用性比纯粹性重要,但个例并不足以打破规则
除非有具体要求,否则错误永远不可以忽略
对于具有歧义的情况,不要凭感觉猜测
应该提供一种一目了然的实现方式(通常只有一种),尽管这种方式不会在一开始就能想出,除非你是python之父
现在做好过永远不做,但不思考直接去做不如不做
如果方案不容易解释,那一定不是个好方案,如果方案很容易解释,那可能是一个好的方案
命名空间是个绝妙的好主意,我们应当多加利用
2. 输入张三2次的考试成绩,输出成绩提升百分比
f=float(input('please input the first score of zhangsan:'))
s=float(input('please input the second score of zhangsan:'))
print('percentage of scores improve:%.2f%%'%((s-f)/f*100))
3. 对列表scores = [89,88,91,87,93,95]进行增删改查的操作
scores =[89,88,91,87,93,95]
scores.insert(1,99)
scores.append(98)
print(scores)
scores.pop()
scores.pop(3)
print(scores)
scores[2]=100
print(scores)
print('length=%d'%len(scores))
print(scores[len(scores)-1])
print(scores[-6])
二、遇到的问题
1.python之禅翻译
2.以百分号形式输出结果
三、处理方式
1.网上查找
2.增加‘%%’占位符,并对运算结果乘以100
|