2020.3.5 课后练习二
>0、分别画出下面两个列表在内存中是如何存放的 l1=[11,22,[333,444]] l2=[11,22,[33,{'name':'egon','age':18}]]
>1、用户输入姓名、年龄、工作、爱好 ,然后打印成以下格式
------------ info of Egon -----------
Name : Egon
Age : 22
Sex : male
Job : Teacher
------------- end -----------------
>>> >>> x=input('Name:') Name:Egon >>> y=input('Age:') Age:22 >>> z=input('Sex:') Sex:male >>> t=input('Job:') Job:Teacher >>> res=f'Name:{x} Age:{y} Sex:{z} Job:{t} ' >>> l1='------------ info of Egon ----------- ' >>> l2='------------- end -----------------' >>> print(l1,res,l2) ------------ info of Egon ----------- Name:Egon Age:22 Sex:male Job:Teacher ------------- end ----------------- >>>
>2、用户输入账号密码,程序分别单独判断账号与密码是否正确,正确输出True,错误输出False即可
>>> >>> count='CC' >>> code=12345 >>> count1=input('please input your count:') please input your count:ML >>> code1=input('please input your code:') please input your code:123 >>> print(count==count1) False >>> print(code==code1) False >>>
>3、让计算机提前记下egon的年龄为18岁,写一个猜年龄的程序,要求用户输入所猜的年龄 ,然后程序拿到用户输入的年龄与egon的年龄比较,输出比较结果即可
>>> >>> egonAge=18 >>> guessAge=input('egonAge is:') egonAge is:20 >>> print(guessAge == egonAge) False >>>
>4、程序从数据库中取出来10000条数据,打算显示到页面中, 但一个页面最多显示30条数据,请选取合适的算数运算符,计算 显示满30条数据的页面总共有多少个? 最后一页显示几条数据?
>>> >>> print(10000/30) # x/y 除法运算 333.3333333333333 >>> print(10000//30) # x//y 保留整数部分 333 >>> >>> print(10000%30) # x%y 取模,保留余数部分 10 >>>
>5、egon今年为18岁,请用增量赋值计算3年后egon老师的年龄
>>> >>> egonAge=18 >>> egonAge+=3 >>> print(egonAge) 21 >>>
>6、将值10一次性赋值给变量名x、y、z
>>> >>> x=y=z=10 >>> print(x,y,z) 10 10 10 >>>
>7、请将下面的值关联到它应该对应的变量名上,你懂的
dsb = "egon"
superman = "alex"
失误版:(太着急输出结果啦……)
>>> dsb = "egon" >>> superman = "alex" >>> temp=dsb >>> superman=dsb >>> print(dsb,superman) egon egon
成功版:
>>> >>> dsb = "egon" >>> superman = "alex" >>> temp=dsb >>> dsb=superman >>> superman=temp >>> print(dsb,superman) alex egon >>>
>8、我们只需要将列表中的傻逼解压出来,一次性赋值给对应的变量名即可 names=['alex_sb','wusir_sb','oldboy_sb','egon_nb','lxx_nb','tank_nb']
>>> >>> names=['alex_sb','wusir_sb','oldboy_sb','egon_nb','lxx_nb','tank_nb'] >>> x,y,z,*_=names >>> print(x,y,z) alex_sb wusir_sb oldboy_sb >>>
【整理版】
1、短路运算面试题,请说出下列运算的结果 # 优先级 not(取反) and(一假则假) or(一真则真) 1 or 3 and 4 True - --1 1 and 0 or 0 and 3 False - --0 0 and 3 and 1 False - --0 1 and 2 or 1 True - --2 -31 and 2 or 1 or 4 True - --- 2 33 or False and 1 or 5 True - --33 print(1 or 3 and 4) print(1 and 0 or 0 and 3) print(0 and 3 and 1) print(1 and 2 or 1) print(-31 and 2 or 1 or 4) print(33 or False and 1 or 5) 输出结果: 1 0 0 2 2 33 2、用户输入账号密码,程序分别单独判断账号与密码是否正确,正确输出True,错误输出False即可 版本一: user = {'name': 'cc', 'password': 123} # user = {'name':'cc','password':'123'} user_name = input('请输入你的名字:') user_psd = input('请输入你的密码:') # input输入的用户信息,是字符串的形式。 # 在进行校验时,一定要保证数据类型的一致(可比较)。 # 两种解决办法:(1)用户原始信息都保存为 字符串格式 # (2)先将用户输入的纯数字数据,强制转换为 整型 user_psd = int(user_psd) if user_name == user['name'] and user_psd == user['password']: print('True') else: print('False') 版本二: name = 'cc' password = '123' user_name = input('请输入姓名:') user_psd = input('请输入密码:') if user_name == name: if user_psd == password: print('True') else: print('False') 3、让计算机提前记下egon的年龄为18岁,写一个猜年龄的程序,要求用户输入所猜的年龄 ,然后程序拿到用户输入的年龄与egon的年龄比较,输出比较结果即可 egon_age = 18 inp_age = input('请输入你所猜测的egon的年龄:') inp_age = int(inp_age) if inp_age > egon_age: print('猜大了~') elif inp_age < egon_age: print('猜小了~') else: print('真棒,猜对了') 4、程序从数据库中取出来10000条数据,打算显示到页面中, 但一个页面最多显示30条数据, 请选取合适的算数运算符,计算 显示满30条数据的页面总共有多少个? 最后一页显示几条数据? data = 10000 page_num = data // 30 last_page = data % 30 # last_page = data-page_num*30 # 方法二 print('一共需要打印%s张页面,最后一张包含%s条数据' % (page_num, last_page)) 5、egon今年为18岁,请用增量赋值计算3年后egon老师的年龄 egon_age = 18 egon_age += 3 print(egon_age) 6、将值10一次性赋值给变量名x、y、z # 链式赋值 x = y = z = 10 7、请将下面的值关联到它应该对应的变量名上,你懂的 dsb = "egon" superman = "alex" dsb, superman = superman, dsb print('dsb is %s,superman is %s' % (dsb, superman)) 8、我们只需要将列表中的傻逼解压出来,一次性赋值给对应的变量名即可 names = ['alex_sb', 'wusir_sb', 'oldboy_sb', 'egon_nb', 'lxx_nb', 'tank_nb'] # 解压赋值 alex, wusir, oldboy, egon, lxx, tank = names print(alex) print(wusir) print(oldboy) print(egon) print(lxx) print(tank) 9、编写验证用户身份的程序(用计算机取代业务员) user_info = {'name': 'cc', 'password': '123'} user_name = input('请输入用户名:').strip() user_psd = input('请输入密码:').strip() if user_name == user_info['name'] and user_psd == user_info['password']: # 字典用key取值,一定要是字符串格式 print('登陆成功') else: print('用户名或密码错误,请重新登录') 10、编写程序实现如下功能 要求用户输入今天是周几,然后作出判断 如果: 今天是Monday, 那么: 上班 如果: 今天是Tuesday, 那么: 上班 如果: 今天是Wednesday, 那么: 上班 如果: 今天是Thursday, 那么: 上班 如果: 今天是Friday, 那么: 上班 如果: 今天是Saturday, 那么: 出去浪 如果: 今天是Sunday, 那么: 出去浪 work_day = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday'] lovely_day = ['Saturday', 'Sunday'] input_day = input('请选择输入一周中你最喜欢的一天 (Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday):').strip() if input_day in work_day: print('今天是%s,请好好工作,向qian看吧' % input_day) elif input_day in lovely_day: print('今天是%s,请放飞自我,出去浪吧' % input_day)