id,node_id,number,title,user,state,locked,assignee,milestone,comments,created_at,updated_at,closed_at,author_association,active_lock_reason,draft,pull_request,body,reactions,performed_via_github_app,state_reason,repo,type 1646350377,PR_kwDOAMm_X85NMgVL,7698,Use read1 instead of read to get magic number,10678620,open,0,,,5,2023-03-29T18:57:23Z,2023-04-18T22:36:30Z,,FIRST_TIME_CONTRIBUTOR,,0,pydata/xarray/pulls/7698,"Addresses #7697. I changed the isinstance check because neither `read` nor `read1` are provided by IOBase. Only RawIOBase and BufferedIOBase provide `read` and `read1` respectively. I think that there is little benefit to using `.tell()`. I suggest the following: ```python filename_or_obj.seek(0) magic_number = filename_or_obj.read1(count) filename_or_obj.seek(0) ``` ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/7698/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull