day 07

部分作业解析
# 1.输入一个字符串,打印所有奇数位上的字符(下标是1,3,5,7…位上的字符)
# 例如: 输入**'abcd1234 ' **  输出**'bd24'**
str1='abcd1234 '
str2=''
for i in range(1,len(str1),2):
    str2+=str1[i]
print(str2)
# 运行结果:bd24

# 2.输入用户名,判断用户名是否合法(用户名长度6~10位)
str1 = 'fghjfgh'
result = '合法' if 6 <= len(str1) <= 10 else '不合法'
print(result)
# 运行结果:合法

# 3.输入用户名,判断用户名是否合法(用户名必须包含且只能包含数字和字母,
# 例如: **'abc'**  — 不合法    **'123'**  — 不合法   **'abc123'**  — 不合法    **'Abc123ahs'**  — 合法
name_str ='Fghjk45'
for i in name_str:
    if 'a' <= i <= 'z' or 'A' <= i <= 'Z' or '0' <= i <= '9':
        continue
    else:
        print('不合法')
        break
else:
    print('合法')
# 运行结果: 合法

# 4.输入用户名,判断用户名是否合法(用户名必须包含且只能包含数字和字母,并且第一个字符必须是大写字母)
# 例如: **'abc'**  — 不合法    **'123'**  — 不合法   **'abc123'**  — 不合法    **'Abc123ahs'**  — 合法
str1 = 'shj4567'
num = 0
if 'A' <= str1[0] <= 'Z' and len(str1) > 1:  # 判断首字母是否是大写,且是否大于1位数字
    for i in str1[1:]:  # 从第二个数字进行遍历
        if '0' <= i <= '9':
            num += 1
        elif 'a' <= i <= 'z' or 'A' <= i <= 'Z':
            continue
        else:
            print('不合法')
            break
    else:
        result = '合法' if num else '不合法'
        print(result)
else:
    print('不合法')
# 运行结果:不合法

#7.输入一个小于1000的数字,产生对应的学号
# 例如: 输入**'23'**,输出**'py1901023'**    输入**'9'**,
# 输出**'py1901009'**     输入**'123'**,输出**'py1901123'**
# 构造器 str()
 num = 4
 stu_id = 'py190' + str(1000 + num)
 print(stu_id)
    
 stu_id = 'py1901{:0>3}'.format(num)
 print(stu_id)

# 运行结果:py1901004

# 9输入字符串,将字符串的开头和结尾变成'+',产生一个新的字符串
# 例如: 输入字符串**'abc123'**,  输出**'+bc12+'**
# 直接用字符串拼接
str6='fghjk345' 
print('+'+str6[1:-1]+'+')

# 11.获取两个字符串中公共的字符
# 例如: 字符串1为:**abc123**, 字符串2为: **huak3** , 打印:**公共字符有:a3**
str1="abc1233"
str2='huak3'
str3=''
for i in str1:
    if i in str2 and i not in str3:
        str3+=i
print(str3)

# 运行结果:a3

文件操作

数据持久化,可以将数据从瞬间状态转化为持久状态

open(参数1,参数2,参数3) – 打开文件,打开的是一个文件对象

参数1:路径和文件名

参数2:文件的打开方式(读和写)

参数3:文件打开的编码形式: utf-8 (万国码,图片音频视频可以不加)

参数1

语法: . 表示当前文件夹(可以省略不写);..表示返回上一级

文件夹和文件夹之间,以及文件夹和文件之间需要使用\间隔

路径存在相对路径和绝对路径

相对路径:以当前参照物为基础,另一个文件相对于参照物应该使用/

绝对路径:以磁盘为参照物,使用\

参数2

参数2:r,a,w,+ —文件编辑方式 t,b----文件展示形式

t:文本(可以不写,默认) b:字节

r:只读,如果文件不存在,报错

a:只写,文件不存在,先自动创建;如果文件存在,先清空。(如果文件夹不存在,不会创建新文件夹)

+:可读可写,一般不用

参数3

encoding=‘utf-8’ 万国码 一般都填这个

所有的文件在内存中都是以二进制性质保存的

文件的写操作
f = open('./test/咏鹅.txt','w',encoding='utf-8')  #  先打开对应文件位置
str_1='\t咏 鹅\n\t骆宾王\n鹅鹅鹅,曲项向天歌。\n' \
      '白毛浮绿水,红掌拨清波。'
f.write(str_1)   # 进行写的操作
# f = open('./test/咏鹅.txt','w',encoding='utf-8')
f.write(str_2) # 输入多个write 需要\n 换行
f.write(str_3)
f.close()  # 操作完成之后,关闭文件
文件的读操作
f=open('./test/咏鹅.txt','r',encoding='utf-8')  # 打开相对应的文件位置
# read():一次性读所有内容, 结果为字符串
# print(f.read())
# readline() :一次读一行,结果为字符串
print(f.readline())
# readlines():一次读全部内容,每一行内容作为列表中的一个元素,输出结果为列表
print(f.readlines())
f.close()
图片的读写操作
# 读取图片
f1=open('./test/tup.jpg','rb')  # 打开对应位置
result=f1.read()
print(result)
f1.close()

# 下载图片
f2=open('./test/photo.jpg','wb')
f2.write(result)

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值