6.11python 作业

1.课堂例子:
01初识python
#!/usr/bin/env python
# -*- coding: utf-8 -*-

# print('hello world!')
'''
print('hello world!')
'''

name = 'lyj'
print(name)

# id,type,value
x = 10
y = 10

'''
python小计数池(python优化机制):
    在变量值产生后指定的范围内,
    在内存中事先开辟一块内存空间,
    然后分别把指定范围内的变量存放进去。
'''
print(id(x))
print(id(y))

name = 'lyj'
print(type(x))
print(type(name))

# 判断值是否相等
print(x == y)

# 判断id是否相等
print(x is y)

# 常量(常量也是变量,在python中大家都规定只要是大写的变量都称之为常量)
SCHOOL = '安徽工程大学'

# 用户与程序交互
name = input('input your name:')
pwd = input('请输入密码:')

print(name, pwd)
print(type(name), type(pwd))

'''
python2:
    raw_input()

python3:
    input()

'''

# 整型int
number = 100  # int(100)
number2 = int(100)
print(number)
print(number2)

# 浮点型 float
sal = 15.0
sal2 = float(15.0)
print(sal)
print(sal2)

# 字符串类型(可以分行输出)
name = 'zhuxuening'
name2 = "zhuxuening"
content = '''
sdjahbdh
safbjdj
afsbj
'''
#
print(name, name2, content)

# python中字符串可以相加、相乘
print('lyj ' * 5)
print('lyj' + 'hello')
print('lyj', 'hello')

# 列表类型
# []括号内以逗号隔开,可存放多个不同类型的值。
list1 = ['lyj', 21, ['dl', 25]]
print(list1[0])
print(list1[5][0])

# 字典类型
# 在{}内,都逗号隔开,可存放多个值,每个值以key: value的形式存储
dict1 = {'name': "lyj", "age": 21}
print(dict1["name"])

# 布尔类型
# True or False
print(10 == 10)  # True
print(10 == 11)  # False

# 注意: 所有数据类型都自带布尔, 0、None、空都为False

# 格式化输出
# 可以在输出时给字符串类型做一次替换
# %s占位符,%d可以替换数字类型
number = input('请输入:')
str1 = '''
    尊敬的用户,您的话费余额为%s元。
 ''' % number
print(str1)

# for循环
list1 = [1, 2, 3, 4, 5]
for line in list1:
    print(line)

for line in range(1, 10):
    print(line)

dict1 = {'name': "lyj", "age": 21}
for key in dict1:
    print(key)
    print(dict1[key])
02 字符串的内置方法
# # 字符串的操作
str1 = 'my name is xxx, my age is 18。'
# 1、按索引取值(正向取+反向取) :只能取
print(str1[3])

 # 2、切片(顾头不顾尾,步长)
 print(str1[3:7])  # 3 - (7-1)

# 步长为2
print(str1[3:10:2])

# 3、长度len
print(len(str1))

# 4、成员运算in和not in
print('x' in str1)  # True
print('T' in str1)  # False

# 5、移除空白strip
# 去除字符串左右两边的空格
str1 = '  my name is xxx, my age is 18。  '
print(str1)
print(str1.strip())

# 6、切分split
# 会根据split()括号中的规则去切分字符串,然后把每一个值追加到列表中。
str2 = 'my name is xxx, my age is 18。'
list2 = str2.split(' ')
print(list2)

# 7、循环
str2 = 'my name is xxx, my age is 18。'
for line in str2:
    print(line)  # print默认参数end="\n"
    print(line, end=" ")  # 自定义end参数

# 需要掌握的
str4 = '   my name is xxx, my age is 18。'
str5 = 'my name is xxx, my age is 18。   '

# 1、strip,lstrip,rstrip
# l 去除左边的空格或指定符号
# r 去除右边的空格或指定符号
print(str4.lstrip())
print(str5.rstrip())
str4 = '***my name is xxx, my age is 18。'
str5 = 'my name is xxx, my age is 18。***'
print(str4.lstrip('*'))
print(str5.rstrip('*'))

# 2、lower(转换成小写),upper(转换成大写)
str6 = 'my name is Zhu'
print(str6.lower())
print(str6.upper())

# 3、startswith,endswith (判断字符串首位是否成立)
print(str6.startswith("my"))  # True
print(str6.startswith("MY"))  # False

print(str6.endswith("Zhu"))  # True
print(str6.endswith("zhu"))  # False

# 4、format的三种玩法
# 方式一: 按照位置替换
str7 = 'my name is {}, my age is {}!'
str7 = str7.format('Zhu', 18, 111)
print(str7)

# 方式二: 安装索引替换
str7 = 'my name is {0}, my age is {1}!'
str7 = str7.format('Zhu', 18, 111)
print(str7)

# 方式三: 指名道姓替换
str7 = 'my name is {name}, my age is {age}!'
str7 = str7.format(age=18, name='Zhu')
print(str7)

# 5、split,rsplit  # 从左边开始切分、从右边开始切分

# 6、join
# 字符串拼接,会对列表中的数据按照某种标识进行拼接,
# 列表中的值必须是字符串类型
name = 'tank'
age = "18"
 sex = 1
print(':'.join([name, age]))
# 报错expected str instance, int found
# print(':'.join([name, age, sex]))

# 7、replace
str8 = 'old new'
# 括号中第一个参数是旧参数,第二个参数是新参数
# 两个参数进行替换
str8 = str8.replace('old', 'python')
print(str8)

# 8、isdigit  判断字符串是否是数字
ID = input('请输入ID')
print(ID)
print(type(ID))
print(ID.isdigit())
03列表的内置方法
list1 = ['zhu', 18, 'female', 3.0, 9]
# 优先掌握的操作:
# 1、按索引存取值(正向存取+反向存取):即可存也可以取
# 正向取值
print(list1[4])  # 9
# 反向取值
print(list1[-2])

# 2、切片(顾头不顾尾,步长)
print(list1[1:5])
# 步长
print(list1[1:5:2])

# 3、长度
print(len(list1))

# 4、成员运算in和not in
print('tank' in list1)  # True
print('tank' not in list1)  # False

# 5、追加
# 在列表末尾追加值
list1.append('张全蛋')
list1.append('赵铁柱')
print(list1)

# 6、删除
# pop取出列表中的值

print(list1.pop())  # ()默认不写为-1,取最后一位
print(list1.pop(0))  # tank

level = list1.pop()  # 取出列表中的老师等级并赋值给level变量
print(level)
print(list1)  # ['tank', 18, 'male', 3.0]

# remove删除列表中的值
name = list1.remove('zhu')  # 直接删除列表中的zhu,赋值给name为None
print(name)
print(list1)  # [18, 'male', 3.0]

# 7、循环
for line in list1:
    print(line)
2.字符串类型
(1)#int(整型)
在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647
在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807
(2)#long(长整型)
跟C语言不同,Python的长整数没有指定位宽,即:Python没有限制长整数数值的大小,但实际上由于机器内存有限,我们使用的长整数数值不可能无限大。
注:自从Python2.2起,如果整数发生溢出,Python会自动将整数数据转换为长整数,所以如今在长整数数据后面不加字母L也不会导致严重后果了。
注:在Python3里不再有long类型了,全都是int
(3)#complex复数型

(4)#bool型
#所有数据类型都自带布尔值
1、None,0,空(空字符串,空列表,空字典等)三种情况下布尔值为False
2、其余均为真

3.作业
name="  alex"
#1)移除空格
print(name.strip())
#2)判断变量值是否以‘al’开头
print(name.startswith("al"))
#3)判断变量值是否以‘X’结尾
print(name.endswith("X"))
#4)将变量中的“l”替换为“p”
name = name.replace('l', 'p')
print(name)
#5)将变量中的“l”分割
print(name.split("l"))
#6)将变量中的值变成大写
print(name.upper())
#7)将变量中的值变成小写
print(name.lower())
#8)输出变量中的第二个字符
print(name.pop(1))
#9)输出变量中的前三个字符
print(name[0:3])
#10)输出变量中的后两个字符
print(name[-3:-1])
#11)输出变量中“e”所在的索引位置
print(name.find("e"))
#12)获取子序列,去掉最后一个字符
print(name[0:-1])

运行结果;

猜你喜欢

转载自www.cnblogs.com/bcsacr/p/11006266.html